php字符编码转换代码
里面有各种大家开发中常用到的种编码如uft8->gbk gbk转utf8 繁体转简体 简体转繁体 utf8转unicode gbk转拼音 Ascii转拼音 等
<?php教程 /** * utf8转gbk * @param $utfstr */ function utf8_to_gbk($utfstr) { global $UC2GBTABLE; $okstr = ''; if(empty($UC2GBTABLE)) { $filename = CODETABLEDIR.'gb-unicode.table'; $fp = fopen($filename, 'rb'); while($l = fgets($fp,15)) { $UC2GBTABLE[hexdec(substr($l, 7, 6))] = hexdec(substr($l, 0, 6)); } fclose($fp); } $okstr = ''; $ulen = strlen($utfstr); for($i=0; $i<$ulen; $i++) { $c = $utfstr[$i]; $cb = decbin(ord($utfstr[$i])); if(strlen($cb)==8) { $csize = strpos(decbin(ord($cb)),'0'); for($j = 0; $j < $csize; $j++) { $i++; $c .= $utfstr[$i]; } $c = utf8_to_unicode($c); if(isset($UC2GBTABLE[$c])) { $c = dechex($UC2GBTABLE[$c]+0x8080); $okstr .= chr(hexdec($c[0].$c[1])).chr(hexdec($c[2].$c[3])); } else { $okstr .= '&#'.$c.';'; } } else { $okstr .= $c; } } $okstr = trim($okstr); return $okstr; } /** * gbk转utf8 * @param $gbstr */ function gbk_to_utf8($gbstr) { global $CODETABLE; if(empty($CODETABLE)) { $filename = CODETABLEDIR.'gb-unicode.table'; $fp = fopen($filename, 'rb'); while($l = fgets($fp,15)) { $CODETABLE[hexdec(substr($l, 0, 6))] = substr($l, 7, 6); } fclose($fp); } $ret = ''; $utf8 = ''; while($gbstr) { if(ord(substr($gbstr, 0, 1)) > 0x80) { $thisW = substr($gbstr, 0, 2); $gbstr = substr($gbstr, 2, strlen($gbstr)); $utf8 = ''; @$utf8 = unicode_to_utf8(hexdec($CODETABLE[hexdec(bin2hex($thisW)) - 0x8080])); if($utf8 != '') { for($i = 0; $i < strlen($utf8); $i += 3) $ret .= chr(substr($utf8, $i, 3)); } } else { $ret .= substr($gbstr, 0, 1); $gbstr = substr($gbstr, 1, strlen($gbstr)); } } return $ret; } /** * 繁体转简体 * @param $Text */ function big5_to_gbk($Text) { global $BIG5_DATA; if(empty($BIG5_DATA)) { $filename = CODETABLEDIR.'big5-gb.table'; $fp = fopen($filename, 'rb'); $BIG5_DATA = fread($fp, filesize($filename)); fclose($fp); } $max = strlen($Text)-1; for($i = 0; $i < $max; $i++) { $h = ord($Text[$i]); if($h >= 0x80) { $l = ord($Text[$i+1]); if($h==161 && $l==64) { $gbstr = ' '; } else { $p = ($h-160)*510+($l-1)*2; $gbstr = $BIG5_DATA[$p].$BIG5_DATA[$p+1]; } $Text[$i] = $gbstr[0]; $Text[$i+1] = $gbstr[1]; $i++; } } return $Text; } /** * 简体转繁体 * @param $Text */ function gbk_to_big5($Text) { global $GB_DATA; if(empty($GB_DATA)) { $filename = CODETABLEDIR.'gb-big5.table'; $fp = fopen($filename, 'rb'); $gb = fread($fp, filesize($filename)); fclose($fp); } $max = strlen($Text)-1; for($i = 0; $i < $max; $i++) { $h = ord($Text[$i]); if($h >= 0x80) { $l = ord($Text[$i+1]); if($h==161 && $l==64) { $big = ' '; } else { $p = ($h-160)*510+($l-1)*2; $big = $GB_DATA[$p].$GB_DATA[$p+1]; } $Text[$i] = $big[0]; $Text[$i+1] = $big[1]; $i++; } } return $Text; } /** * unicode转utf8 * @param $c */ function unicode_to_utf8($c) { $str = ''; if($c < 0x80) { $str .= $c; } elseif($c < 0x800) { $str .= (0xC0 | $c >> 6); $str .= (0x80 | $c & 0x3F); } elseif($c < 0x10000) { $str .= (0xE0 | $c >> 12); $str .= (0x80 | $c >> 6 & 0x3F); $str .= (0x80 | $c & 0x3F); } elseif($c < 0x200000) { $str .= (0xF0 | $c >> 18); $str .= (0x80 | $c >> 12 & 0x3F); $str .= (0x80 | $c >> 6 & 0x3F); $str .= (0x80 | $c & 0x3F); } return $str; } /** * utf8转unicode * @param $c */ function utf8_to_unicode($c) { switch(strlen($c)) { case 1: return ord($c); case 2: $n = (ord($c[0]) & 0x3f) << 6; $n += ord($c[1]) & 0x3f; return $n; case 3: $n = (ord($c[0]) & 0x1f) << 12; $n += (ord($c[1]) & 0x3f) << 6; $n += ord($c[2]) & 0x3f; return $n; case 4: $n = (ord($c[0]) & 0x0f) << 18; $n += (ord($c[1]) & 0x3f) << 12; $n += (ord($c[2]) & 0x3f) << 6; $n += ord($c[3]) & 0x3f; return $n; } } /** * Ascii转拼音 * @param $asc * @param $pyarr */ function asc_to_pinyin($asc,&$pyarr) { if($asc < 128)return chr($asc); elseif(isset($pyarr[$asc]))return $pyarr[$asc]; else { foreach($pyarr as $id => $p) { if($id >= $asc)return $p; } } } /** * gbk转拼音 * @param $txt */ function gbk_to_pinyin($txt) { if(CHARSET != 'gbk') { $txt = iconv(CHARSET,'GBK',$txt); } $l = strlen($txt); $i = 0; $pyarr = array(); $py = array(); $filename = CODETABLEDIR.'gb-pinyin.table'; $fp = fopen($filename,'r'); while(!feof($fp)) { $p = explode("-",fgets($fp,32)); $pyarr[intval($p[1])] = trim($p[0]); } fclose($fp); ksort($pyarr); while($i<$l) { $tmp = ord($txt[$i]); if($tmp>=128) { $asc = abs($tmp*256+ord($txt[$i+1])-65536); $i = $i+1; } else $asc = $tmp; $py[] = asc_to_pinyin($asc,$pyarr); $i++; } return $py; }
永久链接:
转载随意!带上文章地址吧。

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment résoudre PHPWarning:fopen():SSLoperationfailedinfile.phponlineX Dans la programmation PHP, nous utilisons souvent la fonction fopen pour ouvrir des fichiers ou des URL et effectuer des opérations associées. Cependant, lorsque vous utilisez la fonction fopen, vous rencontrerez parfois quelque chose de similaire à Warning:fopen():SSLoperationfailedinfile.p

Comment résoudre PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory Dans le processus d'utilisation du développement PHP, nous rencontrons souvent des problèmes de fonctionnement des fichiers, dont "PHPWarning:fopen():failedtoopenstream:Nosuchfileordirectory"

Comment résoudre PHPWarning:fopen():failedtoopenstream:Permissiondenied Dans le processus de développement de programmes PHP, nous rencontrons souvent des messages d'erreur, tels que PHPWarning:fopen():failedtoopenstream:Permissiondenied. Cette erreur est généralement due à des autorisations de fichier ou de répertoire incorrectes

Lors du traitement de texte, il est courant de convertir des chaînes dans différents formats de codage. La fonction iconv (InternationalizationConversion) fournie dans le langage PHP peut répondre à ce besoin très facilement. Cet article présentera en détail l'utilisation de la fonction iconv sous les aspects suivants : Définition de la fonction iconv et introduction aux paramètres communs Exemple de démonstration : Convertir une chaîne codée GBK en chaîne codée UTF-8 Exemple de démonstration : Convertir UTF

Dans Matlab, la fonction fopen est utilisée pour ouvrir un fichier et renvoyer l'identifiant du fichier pour des opérations de lecture ou d'écriture ultérieures sur le fichier. Sélectionnez les options d'autorisation appropriées pour ouvrir le fichier selon vos besoins et fermez-le rapidement une fois l'opération terminée. Il convient de noter qu'après avoir ouvert un fichier, vous devez vous assurer que le fichier est fermé à temps lorsqu'il n'est plus nécessaire de libérer des ressources système. De plus, si l'ouverture du fichier échoue ou si une erreur d'opération se produit, le mécanisme de gestion des erreurs peut être utilisé pour la gérer en conséquence.

La fonction d'explosion en PHP est une fonction utilisée pour diviser une chaîne en un tableau. Elle est très courante et flexible. Lors du processus d'utilisation de la fonction d'éclatement, nous rencontrons souvent des erreurs et des problèmes. Cet article présentera l'utilisation de base de la fonction d'éclatement et fournira quelques méthodes pour résoudre les rapports d'erreurs. 1. Utilisation de base de la fonction exploser En PHP, la syntaxe de base de la fonction exploser est la suivante : éclater(string$separator,string$stri

Dans le développement PHP, les opérations sur les fichiers sont très courantes. Dans des circonstances normales, nous devons effectuer la lecture, l'écriture, la suppression et d'autres opérations de fichiers. Parmi elles, la fonction fopen et la fonction fread peuvent être utilisées pour lire le fichier, et les fonctions fopen, fwrite et fclose peuvent être utilisées pour écrire le fichier. Cet article présentera comment PHP utilise fopen, fwrite et fclose pour effectuer des opérations sur les fichiers. 1. Fonction fopen La fonction fopen permet d'ouvrir des fichiers. Sa syntaxe est la suivante : r.

La méthode fopen() en C est utilisée pour ouvrir le fichier spécifié. Prenons un exemple pour comprendre la syntaxe du problème. FILE*fopen(filename,mode). Les modes suivants sont valides pour utiliser fopen() pour ouvrir des fichiers : 'r', 'w', 'a', 'r+', 'w+. ', 'a+'. Pour plus d'informations, veuillez visiter la bibliothèque C function-fopen()
