ThinkPHP打開驗證碼頁面顯示亂碼的解決方法
本文實例講述了ThinkPHP打開驗證碼頁面顯示亂碼的解決方法。分享給大家供大家參考。具體分析如下:
在用thinkphp開發(fā)的時候,有時會出現(xiàn)驗證碼亂碼的問題,解決方法是把如下這個文件放在根目錄,訪問后就可以解決了,具體的PHP代碼如下:
if (isset($_GET['dir'])){ //設(shè)置文件目錄
$basedir=$_GET['dir'];
}else{
$basedir = '.';
}
$auto = 1;
checkdir($basedir);
function checkdir($basedir){
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file != '.' && $file != '..'){
if (!is_dir($basedir."/".$file)) {
echo "filename: $basedir/$file ".checkBOM("$basedir/$file")." <br>";
}else{
$dirname = $basedir."/".$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 ("<font color=red>BOM found, automatically removed.</font>");
} else {
return ("<font color=red>BOM found.</font>");
}
}
else return ("BOM Not Found.");
}
function rewrite ($filename, $data) {
$filenum = fopen($filename, "w");
flock($filenum, LOCK_EX);
fwrite($filenum, $data);
fclose($filenum);
}
?>
希望本文所述對大家基于ThinkPHP框架的PHP程序設(shè)計有所幫助。
相關(guān)文章
PHP使Laravel為JSON REST API返回自定義錯誤的問題
這篇文章主要介紹了PHP使Laravel為JSON REST API返回自定義錯誤的問題,非常不錯,具有一定的參考借鑒價值,需要的朋友可以參考下2018-10-10laravel 根據(jù)不同組織加載不同視圖的實現(xiàn)
今天小編就為大家分享一篇laravel 根據(jù)不同組織加載不同視圖的實現(xiàn),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-10-10thinkPHP實現(xiàn)遞歸循環(huán)欄目并按照樹形結(jié)構(gòu)無限極輸出的方法
這篇文章主要介紹了thinkPHP實現(xiàn)遞歸循環(huán)欄目并按照樹形結(jié)構(gòu)無限極輸出的方法,涉及thinkPHP數(shù)據(jù)庫查詢,數(shù)組遍歷與字符串操作等技巧,需要的朋友可以參考下2016-05-05