Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk membuang php ufeff

Bagaimana untuk membuang php ufeff

藏色散人
Lepaskan: 2023-03-13 09:22:01
asal
2683 orang telah melayarinya

Cara mengalih keluar ufeff dalam PHP: 1. Simpan fail PHP dalam format bebas DOM 2. Semak dan alih keluar ufeff melalui kaedah "function checkBOM($filename){...}".

Bagaimana untuk membuang php ufeff

Persekitaran pengendalian artikel ini: sistem windows7, versi PHP7.1, komputer DELL G3

Cara mengalih keluar php ufeff ?

php alih keluar BOMufeff daripada fail

Saya menghadapi masalah hari ini Data yang dikembalikan oleh antara muka permintaan tidak mematuhi format ia keluar dengan penyemak imbas, saya tidak dapat melihat apa-apa masalah Akhirnya, didapati bahawa pengepala data mempunyai UFEFF (pengepala BOM, ia disebabkan oleh format pengekodan fail UTF8-BOM). format tidak betul semasa pembangunan. Terdapat dua penyelesaian:

1 Jika saiz fail kecil, anda boleh menggunakan notopad untuk menyimpannya dalam format bebas DOM (Format -> Tukar kepada UTF-8 bebas DOM. format)

2. Apabila terdapat banyak fail, gunakan kod berikut Selepas dijalankan, anda boleh menyimpan direktori yang ditentukan (tanpa format DOM) Jika parameter diluluskan, semua fail dalam direktori semasa akan dibaiki.

<?php
header(&#39;content-Type: text/html; charset=utf-8&#39;);
if(isset($_GET[&#39;dir&#39;])){ //设置文件目录,如果没有设置,则自动设置为当前文件所在目录
    $basedir=$_GET[&#39;dir&#39;];
}else{
    $basedir=&#39;.&#39;;
}
$auto=1;/*设置为1标示检测BOM并去除,设置为0标示只进行BOM检测,不去除*/
echo &#39;当前查找的目录为:&#39;.$basedir.&#39;当前的设置是:&#39;;
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);
}
?>
Salin selepas log masuk

Pembelajaran yang disyorkan: "Tutorial Video PHP"

Atas ialah kandungan terperinci Bagaimana untuk membuang php ufeff. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
php
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan