[サンプル]PHPでにUTF-8で4バイト文字を検出する方法
スポンサーリンク
CSVアップロードでUTF-8の4バイト文字がはねられてどこかわからない問題があったので、作った即席スクリプト。
行数と対象の文字が入っている前後をダンプします。
<?php $file_handler = fopen("******.csv", "r"); $line = 1; while($data = fgetcsv($file_handler)){ foreach ($data as $item){ $output = preg_split('//u', $item, -1, PREG_SPLIT_NO_EMPTY); foreach ($output as $k){ if(preg_match('/[\xF0-\xF7][\x80-\xBF][\x80-\xBF][\x80-\xBF]/', $k)){ echo $k; var_dump($output); echo $line; } } } $line ++; } fclose($file_handler);