Solution aux caractères tronqués dans php parse_ini_string() : 1. Entrez le chemin du fichier ; 2. Faites correspondre la méthode d'encodage du fichier dans le tableau de méthodes d'encodage fourni ; $contents );" méthode pour convertir en encodage "UTF-8".
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 8.1, ordinateur Dell G3.
php parse_ini_string() Que faire si le code est tronqué ?
L'utilisation de parse_ini_file pour lire des documents texte rencontre le problème des caractères chinois tronqués
1 Solution aux caractères chinois tronqués
$contents = file_get_contents("config.ini"); //输入文件路径 $encoding = mb_detect_encoding($contents, array('UTF-16', 'UTF-8', 'GBK','ASCII', 'SJIS', 'BIG-5'), true); //在提供的编码方式数组中,匹配文件的编码方式 $rst = iconv($encoding, 'UTF-8', $contents);//转为"UTF-8"编码
2 Lire le contenu du fichier ligne par ligne
$contents = file_get_contents($rstPath);//$rstPath-目标文件路径 $encoding = mb_detect_encoding($contents, array('UTF-16', 'UTF-8', 'GBK','ASCII', 'SJIS', 'BIG-5'), true); $file_handle = fopen($rstPath, "r"); while (!feof($file_handle)) { $line = fgets($file_handle); if(empty($line)) continue;//当前行内容为空,进入下一循环 $line = iconv($encoding, 'UTF-8', $line); //...业务逻辑 } fclose($file_handle);
3. string Contenu
$inistr = file_get_contents($filepath); $ini_items = parse_ini_string($inistr, true);
4. Le fichier de configuration config.ini contient du chinois
$iniPath = FCPATH . 'config.ini'; $iniContent = file_get_contents($iniPath);//读取配置文件 $encoding = mb_detect_encoding($iniContent, array('UTF-16', 'UTF-8', 'GBK', 'ASCII', 'SJIS', 'BIG-5'), true);//匹配编码方式 $iniContent = iconv($encoding, 'UTF-8', $iniContent);//转换编码方式 $iniContent = parse_ini_string($iniContent, true, INI_SCANNER_RAW);
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!