ホームページ >バックエンド開発 >PHPの問題 >php bom とはどういう意味ですか?

php bom とはどういう意味ですか?

藏色散人
藏色散人オリジナル
2023-02-20 09:43:403221ブラウズ

php bom は、テキスト ファイルがどの Unicode エンコードであるかを判断するために使用されるマークです。utf-8 でエンコードされたファイルでは、BOM はファイルのヘッダーにあり、ファイルが属することを示すために 3 バイトを占めます。 utf-8エンコーディング。

php bom とはどういう意味ですか?

このチュートリアルの動作環境: Windows 10 システム、PHP バージョン 8.1、DELL G3 コンピューター

php bom の意味?

PHP-BOM

1. 問題の説明: コントロール層を使用して返されるすべての ajax リクエストには、先頭に小さな赤い点が付いています。ファイルの前に BOM を追加する: すべてのファイルに BOM が含まれているわけではないことが後に判明しましたが、すべてのファイルから返されるデータに問題が発生しました。

2.それでは、BOM とは何でしょうか?

回答: utf-8 エンコードされたファイルでは、BOM はファイル ヘッダーにあり、3 バイトを占め、ファイルが utf-8 エンコードに属していることを示すために使用されます。 BOM ヘッダーは存在しますが、BOM ヘッダーを認識できないものもあります。たとえば、PHP が BOM ヘッダーを認識できないため、メモ帳で UTF-8 エンコードを編集した後にエラーが発生することもあります。

3. 解決策は、バッチ処理 BOM スクリプトをオンラインで見つけて実行することです。また、editplus や Ultraedit などのツールを実行して問題を解決することもできます。

4. 最後に、BOM 削除ファイルを指定して実行します。

echo '当前查找的目录为:'.$basedir.'当前的设置是:';
echo $auto?&#39;检测文件BOM同时去除检测到BOM文件的BOM<br />&#39;:&#39;只检测文件BOM不执行去除BOM操作<br />&#39;;
checkdir($basedir);
function checkdir($basedir){
    if($dh=opendir($basedir)){
        while (($file=readdir($dh)) !== false){
            if($file != &#39;.&#39; && $file != &#39;..&#39;){
                if(!is_dir($basedir.&#39;/&#39;.$file)){
                    echo &#39;文件: &#39;.$basedir.&#39;/&#39;.$file .checkBOM($basedir.&#39;/&#39;.$file).&#39; <br>&#39;;
                }else{
                    $dirname=$basedir.&#39;/&#39;.$file;
                    checkdir($dirname);
                }
            }
        }
        closedir($dh);
    }
}
function checkBOM($filename){
    global $auto;
    $contents=file_get_contents($filename);
    $charset[1]=substr($contents,0,1);
    $charset[2]=substr($contents,1,1);
    $charset[3]=substr($contents,2,1);
    if(ord($charset[1])==239 && ord($charset[2])==187 && ord($charset[3])==191){
        if($auto==1){
            $rest=substr($contents,3);
            rewrite($filename,$rest);
            return (&#39; <font color=red>找到BOM并已自动去除</font>&#39;);
        }else{
            return (&#39; <font color=red>找到BOM</font>&#39;);
        }
    }else{
        return (&#39; 没有找到BOM&#39;);
    }
}
function rewrite($filename,$data){
    $filenum=fopen($filename,&#39;w&#39;);
    flock($filenum,LOCK_EX);
    fwrite($filenum,$data);
    fclose($filenum);
}
?>

推奨学習: 「PHP ビデオ チュートリアル

以上がphp bom とはどういう意味ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。