찾다
백엔드 개발PHP 튜토리얼더욱 완벽한 디지털 전환 중국어 카테고리

최근 디지털 중국어로 변환하는 문제가 계속 발생해서 공유하고자 글을 작성하게 되었습니다. 조언을 부탁드립니다.
  1. /*
  2. * func 디지털 전환 중국어 수업
  3. * 저자 shuang
  4. * 날짜 2012-08-17
  5. * 이메일:shuangbrother@sina.com
  6. */
  7. class TransFormNumberNew{
  8. public $chinaData = array('1'=>'壹','2'=>'이','3'=>' 삼','4'=>'사','5'=>'오','6'=>'루','7'=>'旒','8'=>'捌','9'=>'玖');
  9. public $chinaDataInt = array('1'=>'','2'=>'Shi','3'=>'Hundred ','4'=>'仟');
  10. public $chinaDataFloat = array('1'=>'angle','2'=>'fen');
  11. private $Intnumber; // string
  12. private $Floatnumber; // string
  13. public $error = array('0'=>'zero','def'=>'지원되지 않는 데이터 형식');
  14. 공개 함수 __construct($intnumber,$floatnumber){
  15. $this->Intnumber = $intnumber;
  16. $this->Floatnumber = $floatnumber;
  17. }
  18. 공개 함수 getTransInt( ){
  19. /*숫자가 0이거나 숫자가 아닌 문자인 경우 오류 메시지를 반환합니다.*/
  20. if($this->Intnumber == 0){
  21. return $this-> errorNotice('def' );
  22. }
  23. if(!preg_match('/^d $/',$this->Intnumber)){
  24. return $this->errorNotice('def' );
  25. }
  26. /*문자열에서 0으로 시작하는 문자 제거*/
  27. $this->dealIntZero();
  28. $data = array();
  29. / *문자열을 4개의 그룹으로 분할*/
  30. $data = str_split(strrev($this->Intnumber),4);
  31. return $this->setTransInt($data);
  32. }
  33. 공개 함수 getTransFloat(){
  34. return $this->setTransFloat($this->Floatnumber,strlen($this->Floatnumber));
  35. }
  36. 비공개 함수 dealIntZero() {
  37. $j = strlen($this->Intnumber);
  38. for($i=0;$i if($this->Intnumber{$ i} != 0){
  39. $this->Intnumber = substr($this->Intnumber,$i,$j);
  40. break;
  41. }
  42. }
  43. }
  44. 비공개 함수 setTransInt($data){
  45. $str = '';
  46. $newArray = array();
  47. while(list($key,$val) = Each($data)) {
  48. $j = strlen($val);
  49. if($j /*문자열이 4자리로 충분하지 않으면 0으로 채웁니다*/
  50. $ val = str_pad($val , 4, "0", STR_PAD_RIGHT);
  51. }
  52. for($i=0;$i /*4개의 문자열마다 반복 ; if string 0이면 이전 비트가 0인지 확인하고, 0이면 처리하지 않습니다. 0이 아니라 "0"을 사용하여 채웁니다. */
  53. if($val{$i} == 0){
  54. if($val{$i-1}){
  55. $newArray[$ key][] = 'zero';
  56. }
  57. }else{
  58. $newArray[$key][] = $this->chinaData[$val{$i}].$this-> ;chinaDataInt[$i 1];
  59. }
  60. }
  61. }
  62. unset($data,$key,$val);
  63. /*위 루프를 중국어 배열로 변환했습니다. 아래에 정리할 수 있습니다. */
  64. foreach(array_reverse($newArray,true) as $key=>$val){
  65. if($key == 0){
  66. $str . '',array_reverse($val));
  67. }
  68. if($key%2 == 1){
  69. $j = Floor($key/2);
  70. if( $j = = 0){
  71. $str .= implode('',array_reverse($val)).'万';
  72. }else{
  73. $str .= implode('',array_reverse( $val) ).'万'.str_pad('',3*$j,'Billion');
  74. }
  75. }
  76. if($key%2 == 0 && $key != 0 ){
  77. if($key/2 > 1){
  78. $str .= implode('',array_reverse($val)).'万万'.str_pad('',3*(floor( $key/ 2)-1),'1억');
  79. }else{
  80. $str .= implode('',array_reverse($val)).'1억';
  81. }
  82. }
  83. }
  84. unset($newArray,$key,$val,$j);
  85. return $str;
  86. }
  87. //소수점 두 자리를 엄격하게 지원합니다
  88. 비공개 함수 setTransFloat( $floatData,$pos){
  89. if($pos > 2){
  90. return $this->errorNotice('def');
  91. }
  92. if($floatData{0} = = 0){
  93. $data[] = 'zero';
  94. }else{
  95. $data[] = $this->chinaData[$floatData{0}].$this-> [1];
  96. }
  97. if($floatData!= 0 ){
  98. $data[] = $this->chinaData[$floatData].$this-> ;chinaDataFloat[2];
  99. }
  100. return implode('',$data);
  101. }
  102. 공개 함수 errorNotice($error){
  103. return $this->error[$ error];
  104. }
  105. }
  106. $num = new TransFormNumberNew('450252352007760006601000300','80');
  107. echo $num->getTransInt();
  108. echo $num-> ;getTransFloat();
코드 복사


성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
PHP 세션이 실패 할 수있는 몇 가지 일반적인 문제는 무엇입니까?PHP 세션이 실패 할 수있는 몇 가지 일반적인 문제는 무엇입니까?Apr 25, 2025 am 12:16 AM

phpsession 실패 이유에는 구성 오류, 쿠키 문제 및 세션 만료가 포함됩니다. 1. 구성 오류 : 올바른 세션을 확인하고 설정합니다. 2. 쿠키 문제 : 쿠키가 올바르게 설정되어 있는지 확인하십시오. 3. 세션 만료 : 세션 시간을 연장하기 위해 세션을 조정합니다 .GC_MAXLIFETIME 값을 조정하십시오.

PHP의 세션 관련 문제를 어떻게 디버그합니까?PHP의 세션 관련 문제를 어떻게 디버그합니까?Apr 25, 2025 am 12:12 AM

PHP에서 세션 문제를 디버그하는 방법 : 1. 세션이 올바르게 시작되었는지 확인하십시오. 2. 세션 ID의 전달을 확인하십시오. 3. 세션 데이터의 저장 및 읽기를 확인하십시오. 4. 서버 구성을 확인하십시오. 세션 ID 및 데이터를 출력, 세션 파일 컨텐츠보기 등을 통해 세션 관련 문제를 효과적으로 진단하고 해결할 수 있습니다.

session_start ()가 여러 번 호출되면 어떻게됩니까?session_start ()가 여러 번 호출되면 어떻게됩니까?Apr 25, 2025 am 12:06 AM

Session_Start ()로 여러 통화를하면 경고 메시지와 가능한 데이터 덮어 쓰기가 발생합니다. 1) PHP는 세션이 시작되었다는 경고를 발행합니다. 2) 세션 데이터의 예상치 못한 덮어 쓰기를 유발할 수 있습니다. 3) Session_status ()를 사용하여 반복 통화를 피하기 위해 세션 상태를 확인하십시오.

PHP에서 세션 수명을 어떻게 구성합니까?PHP에서 세션 수명을 어떻게 구성합니까?Apr 25, 2025 am 12:05 AM

SESSION.GC_MAXLIFETIME 및 SESSION.COOKIE_LIFETIME을 설정하여 PHP에서 세션 수명을 구성 할 수 있습니다. 1) SESSION.GC_MAXLIFETIME 서버 측 세션 데이터의 생존 시간을 제어합니다. 2) 세션 .Cookie_Lifetime 클라이언트 쿠키의 수명주기를 제어합니다. 0으로 설정하면 브라우저가 닫히면 쿠키가 만료됩니다.

세션을 저장하기 위해 데이터베이스를 사용하면 어떤 장점이 있습니까?세션을 저장하기 위해 데이터베이스를 사용하면 어떤 장점이 있습니까?Apr 24, 2025 am 12:16 AM

데이터베이스 스토리지 세션 사용의 주요 장점에는 지속성, 확장 성 및 보안이 포함됩니다. 1. 지속성 : 서버가 다시 시작 되더라도 세션 데이터는 변경되지 않아도됩니다. 2. 확장 성 : 분산 시스템에 적용하여 세션 데이터가 여러 서버간에 동기화되도록합니다. 3. 보안 : 데이터베이스는 민감한 정보를 보호하기 위해 암호화 된 스토리지를 제공합니다.

PHP에서 사용자 정의 세션 처리를 어떻게 구현합니까?PHP에서 사용자 정의 세션 처리를 어떻게 구현합니까?Apr 24, 2025 am 12:16 AM

SessionHandlerInterface 인터페이스를 구현하여 PHP에서 사용자 정의 세션 처리 구현을 수행 할 수 있습니다. 특정 단계에는 다음이 포함됩니다. 1) CustomsessionHandler와 같은 SessionHandlerInterface를 구현하는 클래스 만들기; 2) 인터페이스의 방법 (예 : Open, Close, Read, Write, Despare, GC)의 수명주기 및 세션 데이터의 저장 방법을 정의하기 위해 방법을 다시 작성합니다. 3) PHP 스크립트에 사용자 정의 세션 프로세서를 등록하고 세션을 시작하십시오. 이를 통해 MySQL 및 Redis와 같은 미디어에 데이터를 저장하여 성능, 보안 및 확장 성을 향상시킬 수 있습니다.

세션 ID 란 무엇입니까?세션 ID 란 무엇입니까?Apr 24, 2025 am 12:13 AM

SessionId는 웹 애플리케이션에 사용되는 메커니즘으로 사용자 세션 상태를 추적합니다. 1. 사용자와 서버 간의 여러 상호 작용 중에 사용자의 신원 정보를 유지하는 데 사용되는 무작위로 생성 된 문자열입니다. 2. 서버는 쿠키 또는 URL 매개 변수를 통해 클라이언트로 생성하여 보낸다. 3. 생성은 일반적으로 임의의 알고리즘을 사용하여 독창성과 예측 불가능 성을 보장합니다. 4. 실제 개발에서 Redis와 같은 메모리 내 데이터베이스를 사용하여 세션 데이터를 저장하여 성능 및 보안을 향상시킬 수 있습니다.

무국적 환경 (예 : API)에서 세션을 어떻게 처리합니까?무국적 환경 (예 : API)에서 세션을 어떻게 처리합니까?Apr 24, 2025 am 12:12 AM

JWT 또는 쿠키를 사용하여 API와 같은 무국적 환경에서 세션을 관리 할 수 ​​있습니다. 1. JWT는 무국적자 및 확장 성에 적합하지만 빅 데이터와 관련하여 크기가 크다. 2. 쿠키는보다 전통적이고 구현하기 쉽지만 보안을 보장하기 위해주의해서 구성해야합니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

Video Face Swap

Video Face Swap

완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

뜨거운 도구

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

VSCode Windows 64비트 다운로드

VSCode Windows 64비트 다운로드

Microsoft에서 출시한 강력한 무료 IDE 편집기

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

안전한 시험 브라우저

안전한 시험 브라우저

안전한 시험 브라우저는 온라인 시험을 안전하게 치르기 위한 보안 브라우저 환경입니다. 이 소프트웨어는 모든 컴퓨터를 안전한 워크스테이션으로 바꿔줍니다. 이는 모든 유틸리티에 대한 액세스를 제어하고 학생들이 승인되지 않은 리소스를 사용하는 것을 방지합니다.

드림위버 CS6

드림위버 CS6

시각적 웹 개발 도구