Red de conocimiento informático - Aprendizaje de código fuente - Cómo cambiar el formato pinyin

Cómo cambiar el formato pinyin

Debido a necesidades laborales, escribí una clase que se especializa en conversión de formato pinyin, por ejemplo: Li Haiyang = Li Haiyang. Si algún colega también tiene esta necesidad, puede copiar el código directamente y ayudar a los recién llegados a obtenerlo. algo de popularidad, estaría muy agradecido. Sin más preámbulos, aquí tenéis el código:

? Lenguaje de programación del lado del servidor (abreviatura de preprocesador de hipertexto profesional)

/**

* Pasos:

* 3. Dividir en dos según el formato de retorno Pasos:

* 3.1 Si este parámetro no está escrito, solicita 'Ingrese el formato de retorno: matriz/cadena

* 3.2 El formato de retorno se define como una matriz:

* 3.3 El formato de retorno se define como una cadena:

*

* El código implementa principalmente el método deal_full name (nombre completo):

* Cuando el nombre está abreviado :J.B.

O una caja de conexiones o una letra

* Si no hay separación "-", primero determine si solo hay un nombre, si es así, envíelo directamente; de ​​lo contrario, se determinará en un bucle

*/

Transacción colectiva_autor

{

estático privado $ this _=null

/**

*/

Función pública estática *** dealauthor($author_info, $back_mode){

if (!self: $this_) {

$this_=self:$ this_=new self;

}else{

$ this _=self: $ this _

}

$ autor _ arr=array();

if (!is_array($author_info)) {

$author_info=str_replace(',',',', $author_info);

$ autor _ arr=array _ filter(explode(',',$ autor _ info));

}else{

$ autor _ arr= $ autor _ info

}

//Determinar la posición del apellido

$ es _ apellido _ primero=$ esto _- es _ apellido _ primero($ autor _ arr);

$ después de _ proceso _ autor _ matriz=array()

$ después de _ proceso _ autor _ cadena=" ";

If (!$back_mode){

'return' ingrese el formato de retorno: matriz/cadena;

}elseif($back_mode==' matriz'){

foreach($ autor _ arreglo como $ único _ autor _ nombre){

$ único _ autor _ nombre=trim($ único _ autor _ nombre);

$ es _ China _ autor = $ este _-es _ China _ autor ($ único _ autor _ nombre, $ es _ apellido _ primero

cambiar ($is_china_author); ) {

caso verdadero:

$ autor=$ este _-trato _nombre completo ($ es _ China _ autor

$ después de _ proceso _); autor _ matriz[]= $autor;

Pausa;

Error de caso:

$ after_process_author_array[]=$ single_author_name;

Romper;

}

}

Devolver $after_process_autho

r _array

}elseif($back_mode='string'){

foreach($ autor _ arr as $ single _ autor _ nombre){

$ single _ autor _ nombre=trim($ single _ autor _ nombre);

$ es _ China _ autor =$ este _-es _ China _ autor($ single _ autor _ nombre, $ es _ apellido _ primero);

cambiar ($is_china_author) {

caso verdadero:

$ autor=$ este _-trato _nombre completo ($ es _ China _ autor);

$after_process_author_string .=$autor['nombre']['nombre completo'].',';

Pausa;

Error de caso :

$after_process_author_string .=$single_author_name .',';

Roto;

}

}

Return substr($ after _ proceso _ autor _ cadena, 0, -1

}

}

/**

<); p>*/

función privada is_china_author($single_author_name, $is_surname_first){

//百家surname Pinyin

$surname = $this- gt; pinyin()[2];

$single_author_name = explotar(' ', trim(str_replace(' ', ' ', strtolower($single_author_name))));

if( count($single_author_name) != 2){

return false;

}elseif(isset($apellido[$single_author_name[0]]) || isset($apellido [$ single_author_name[1]])){

if($is_surname_first){

$fullname = array(

'firstname'=gt; strtoupper( $single_author_name [0]),

'apellido'=gt; $single_author_name[1]

);

}else{

$ nombre completo = array(

'firstname'=gt;strtoupper($single_author_name[1]),

'lastname'=gt;$single_author_name[0]

);

}

>

devuelve $nombre completo;

}else{

devuelve falso;

}

}

/**

* $título paquete pinyin

*/

función privada pinyin(){

$pinyin = matriz(

'a'=gt; 0, 'ai'=gt; 1, 'an'=gt; =gt; 5, 'bai'=gt; 6, 'ban'=gt; 7, 'ben'=gt; ;11, 'beng'=gt; 12, 'bi'=gt; 13, 'bian'=gt; ,'bing'=gt;18,'bo'=gt;19,'bu'=gt;20,'ca'=gt;21,'cai'=gt;22,'can'=gt;23,' cang'=gt; 24, 'cao'=gt; 25, 'cha'=gt; =gt; 29, 'chan'=gt; 30, 'chen'=gt; 34, 'cheng'=gt; ;35,'chi'=gt; 36,'chong'=gt; 37,'chou'=gt; ,'chuang'=gt;42,'chui'=gt;43,'chun'=gt;44,'chuo'=gt;45,'ci'=gt;46,'cong'=gt;47,' cou'=gt; 48, 'cu'=gt; 52, 'cuo'=gt; =gt;54,'dai'=gt;55,'dan'=gt;56,'dang'=gt;57,'dao'=gt;58,'de'=gt;59,'deng'=gt 60, 'di'=gt; 61, 'dian'=gt; 62, 'diu'=gt; ,'dong'=gt;67,'dou'=gt;68,'du'=gt;69,'duan'=gt;70,'dui'=gt;71,'dun'=gt;72,' dúo'=gt; 73, 'e'=gt; 74, 'en'=gt; 78, 'colmillo' =gt; 79, 'fei'=gt; 80, 'fen'=gt; 81, 'fu'=gt; ;85,'ga'=gt;86,'gai'=gt;87,'gan'=gt;88,'gang'=gt;89,'gao'=gt;90,'ge'=gt;91 ,'gei'=gt;92,'gen'=gt;93,'geng'=gt;94,'gong'=gt;95,'gou'=gt;96,'gu'=gt;97,' gua'=gt;98,'guai'=gt;99,'guan'=gt;

100, 'guang'=gt; 101, 'gui'=gt; 102, 'hai'=gt; 'han'=gt; 107, 'colgar'=gt; 108, 'hao'=gt; '=gt;113,'hong'=gt;114,'hou'=gt;115,'hu'=gt;116,'hua'=gt;117,'huai'=gt;118,'huan'= gt; 119, 'huang' = gt; 120, 'hui' = gt; 125, 'jian'=gt; 126, 'jiang'=gt; 127, 'jiao'=gt; 'jiong'=gt; 132, 'jiu'=gt; 133, 'jun'=gt; '=gt;138,'kai'=gt;139,'kan'=gt;140,'kang'=gt;141,'kao'=gt;142,'ke'=gt;143,'ken'= gt; 144, 'keng' = gt; 145, 'kong' = gt; 149, 'kuai' = gt; 150, 'kuan' = gt; 151, 'kuang' = gt; 'lai'=gt; 157, 'lan'=gt; 158, 'lei'=gt; '=gt; 163, 'li'=gt; 164, 'liao'=gt; 168, 'mentira'= gt; 169, 'lin' = gt; 170, 'ling' = gt; 171, 'lu' = gt; 175, 'lv'=gt; 176, 'luan'=gt; 177, 'lue'=gt; 'mai'=gt;182,'man'=gt;183,'mang'=gt;184,'mao'=gt;185,'me'=gt;186,'mei'=gt;187,'hombres '=gt;188,'meng'=gt;189,'mi'=gt;190,'mian'=gt;191,'miao'=gt;192,'mie'=gt;193,'min'= gt; 194, 'ming' = gt; 195, 'mi' = gt; 196, 'na' = gt; 200, 'nai'=gt; 201, 'nan'=gt; 202, 'nang'=gt;

,'nen'=gt;207,'neng'=gt;208,'ni'=gt;209,'nian'=gt;210,'niang'=gt;211,'niao'=gt;212,' nie'=gt;213,'nin'=gt;214,'ning'=gt;215,'niu'=gt;216,'nong'=gt;217,'nu'=gt;218,'nv' =gt; 219, 'nuan'=gt; 220, 'nue'=gt; 221, 'pa'=gt; ;225,'pai'=gt;226,'pan'=gt;227,'pang'=gt;228,'pao'=gt;229,'pei'=gt;230,'pen'=gt;231 ,'peng'=gt;232,'pi'=gt;233,'pian'=gt;234,'piao'=gt;235,'pie'=gt;236,'pin'=gt;237,' ping'=gt; 238, 'po'=gt; 239, 'qian'=gt; = gt; 244, 'qiao' = gt; 245, 'qie' = gt; 246, 'qiu' = gt; ;250,'qu'=gt;251,'quan'=gt;252,'que'=gt;253,'qun'=gt;254,'ran'=gt;255,'rang'=gt;256 ,'rao'=gt;257,'re'=gt;258,'ren'=gt;259,'reng'=gt;260,'ri'=gt;261,'rong'=gt;262,' rou'=gt; 263, 'ru'=gt; 264, 'ruan'=gt; =gt;269,'sai'=gt;270,'san'=gt;271,'sang'=gt;272,'sao'=gt;273,'se'=gt;274,'sen'=gt ;275,'seng'=gt;276,'sha'=gt;277,'shai'=gt;278,'shan'=gt;279,'shang'=gt;280,'shao'=gt;281 ,'ella'=gt;282,'shen'=gt;283,'sheng'=gt;284,'shi'=gt;285,'shou'=gt;286,'shu'=gt;287,' shua'=gt; 288,'shuai'=gt; 289,'shuan'=gt; 290,'shui'=gt; =gt;294,'si'=gt;295,'song'=gt;296,'sou'=gt;297,'su'=gt;298,'suan'=gt;299,'sui'=gt ;300,'sol'=gt;301,'suo'=gt;302,'ta'=gt;303,'tai'=gt;304,'tan'=gt;305,'tang'=gt;306 , 'tao'=gt; 307, 'te'=gt; 308, 'teng'=gt; 309, 'ti'=gt;

o'=gt; 312, 'tie'=gt; 313, 'ting'=gt; =gt;318,'tui'=gt;319,'tun'=gt;320,'tuo'=gt;321,'wa'=gt;322,'wai'=gt;323,'wan'=gt ;324,'wang'=gt;325,'wei'=gt;326,'wen'=gt;327,'weng'=gt;328,'wo'=gt;329,'wu'=gt;330 ,'xi'=gt;331,'xia'=gt;332,'xian'=gt;333,'xiang'=gt;334,'xiao'=gt;335,'xie'=gt;336,' xin'=gt;337,'xing'=gt;338,'xiong'=gt;339,'xiu'=gt;340,'xu'=gt;341,'xuan'=gt;342,'xue' =gt; 343, 'xun'=gt; 344, 'ya'=gt; ;349,'yi'=gt;350,'yin'=gt;351,'ying'=gt;352,'yo'=gt;353,'yong'=gt;354,'tú'=gt;355 ,'yu'=gt;356,'yuan'=gt;357,'yue'=gt;358,'yun'=gt;359,'za'=gt;360,'zai'=gt;361,' zan'=gt; 362, 'zang'=gt; 363, 'zen'=gt; =gt; 368, 'zha'=gt; 369, 'zhai'=gt; 370, 'zhe'=gt; ;374,'zhen'=gt; 375,'zheng'=gt; 376,'zhu'=gt; ,'zhua'=gt;381,'zhuai'=gt;382,'zhuan'=gt;383,'zhuang'=gt;384,'zhui'=gt;385,'zhun'=gt;386,' zhuo'=gt;387,'zi'=gt;388,'zong'=gt;389,'zou'=gt;390,'zu'=gt;391,'zuan'=gt;392,'zui' =gt;393,'zun'=gt;394,'zuo'=gt;395

);

$apellido = array('ai'=gt;0,' aixinjueluo'=gt; 1, 'an'=gt; 2, 'ao'=gt; 3, 'ba'=gt; =gt;7,'bao'=gt;8,'bei'=gt;9,'ben'=gt;10,'bi'=gt;11,'bilu'=gt;12,'bian'=gt ;13,'bie'=gt;14,'bing'=gt;15,'bo'=gt;16,'boerjijin'=gt;17,'boshang'=gt;18,'bu'=gt;19 ,'caí'

=gt; 20, 'cang'=gt; 21, 'chanyu'=gt; 22, 'chang'=gt; 26, 'chao'=gt; 27, 'che'=gt; 28, 'chi'=gt; ,'chong'=gt;32,'chou'=gt;321,'chu'=gt;33,'chuan'=gt;331,'chunyu'=gt;34,'cong'=gt;35,' cui'=gt; 36,'dai'=gt; 37,'dang'=gt; 38,'dao'=gt; =gt;42,'diao'=gt;43,'ding'=gt;44,'dong'=gt;45,'dongfang'=gt;46,'dongguo'=gt;47,'dongmen'=gt ;48,'dou'=gt;49,'du'=gt;50,'dugu'=gt;51,'duanmu'=gt;52,'duan'=gt;53,'duangan'=gt;54 ,'duo'=gt;55,'eerdeyu'=gt;56,'e'=gt;57,'fa'=gt;58,'fan'=gt;59,'fang'=gt;60,' fei'=gt; 61, 'feng'=gt; 62, 'fu'=gt; 63, 'fucha'=gt; =gt; 67, 'gao'=gt; 68, 'ge'=gt; 72, 'gongsun'=gt; ;73,'gongxi'=gt;74,'gongyang'=gt;75,'gongye'=gt;76,'gou'=gt;77,'goukang'=gt;78,'gu'=gt;79 ,'guliang'=gt;80,'guan'=gt;81,'guang'=gt;82,'gui'=gt;83,'guihai'=gt;84,'guo'=gt;85,' hai'=gt;86,'han'=gt;87,'hang'=gt;88,'hao'=gt;89,'he'=gt;90,'helian'=gt;91,'hesheli' =gt;92,'heng'=gt;93,'hong'=gt;94,'hou'=gt;95,'huyan'=gt;96,'hu'=gt;97,'hua'=gt ;98,'huai'=gt;99,'huan'=gt;100,'huang'=gt;101,'huangfu'=gt;102,'hui'=gt;103,'hun'=gt;104 ,'huo'=gt;105,'ji'=gt;106,'jia'=gt;107,'jiagu'=gt;108,'jian'=gt;109,'jiang'=gt;110,' jiao'=gt; 111,'jie'=gt; 112,'jin'=gt; 113,'jinchu'=gt; =gt;117,'jun'=gt;1171,'juan'=gt;1172,'jueercha'=gt;118,'ka'=gt;119,'k

an'=gt;120,'kang'=gt;121,'ke'=gt;122,'kong'=gt;123,'kou'=gt;124,'kuyala'=gt;125,'kuai' =gt;126,'kuang'=gt;127,'kuanghou'=gt;128,'kui'=gt;129,'lai'=gt;130,'lan'=gt;131,'lang'=gt ;132,'lao'=gt;133,'lei'=gt;134,'le'=gt;1351,'leng'=gt;135,'li'=gt;136,'lian'=gt;137 ,'liang'=gt;138,'liangqiu'=gt;139,'liao'=gt;140,'lin'=gt;141,'ling'=gt;142,'linghu'=gt;143,' liu'=gt; 144,'long'=gt; 145,'lu'=gt; 148,'luo' =gt; 149, 'lvqiu'=gt; 150, 'lv'=gt; ;155,'mei'=gt;156,'men'=gt;157,'meng'=gt;158,'mi'=gt;159,'miao'=gt;160,'min'=gt;161 ,'ming'=gt;162,'miu'=gt;163,'mo'=gt;164,'moha'=gt;165,'moqi'=gt;166,'mu'=gt;167,' murong'=gt;168,'na'=gt;169,'nala'=gt;170,'nan'=gt;171,'nangong'=gt;172,'nanmen'=gt;173,'neyinfucha' =gt; 174, 'neng'=gt; 175, 'ni'=gt; 176, 'niu'=gt; ;180,'niuhulu'=gt;181,'nong'=gt;182,'ou'=gt;183,'ouyang'=gt;184,'pan'=gt;185,'pang'=gt;186 ,'pei'=gt;187,'peng'=gt;188,'pi'=gt;189,'piao'=gt;190,'ping'=gt;191,'pu'=gt;192,' puyang'=gt;193,'qi'=gt;194,'qidiao'=gt;195,'qiguan'=gt;196,'qian'=gt;197,'qiang'=gt;198,'qiao' =gt; 199, 'qiaoda'=gt; 200, 'qiu'=gt; ;205,'quan'=gt;206,'que'=gt;207,'ran'=gt;208,'rangsi'=gt;209,'rang'=gt;210,'rao'=gt;211 ,'ren'=gt;212,'rong'=gt;213,'ru'=gt;214,'ruyan'=gt;215,'ruan'=gt;216,'rui'=gt;217,' sahala'=gt;218,'

sakeda'=gt;219,'samala'=gt;220,'sa'=gt;221,'sai'=gt;222,'sang'=gt;223,'sha'=gt;224,'shan' =gt;225,'shang'=gt;226,'shangmou'=gt;227,'shangguan'=gt;228,'shao'=gt;229,'ella'=gt;230,'sheer'=gt ;231,'sh