ThinkPHP打開(kāi)驗(yàn)證碼頁(yè)面顯示亂碼的解決方法
本文實(shí)例講述了ThinkPHP打開(kāi)驗(yàn)證碼頁(yè)面顯示亂碼的解決方法。分享給大家供大家參考。具體分析如下:
在用thinkphp開(kāi)發(fā)的時(shí)候,有時(shí)會(huì)出現(xiàn)驗(yàn)證碼亂碼的問(wèn)題,解決方法是把如下這個(gè)文件放在根目錄,訪問(wè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);
}
?>
希望本文所述對(duì)大家基于ThinkPHP框架的PHP程序設(shè)計(jì)有所幫助。
- ThinkPHP5.0框架驗(yàn)證碼功能實(shí)現(xiàn)方法【基于第三方擴(kuò)展包】
- thinkPHP5.0框架驗(yàn)證碼調(diào)用及點(diǎn)擊圖片刷新簡(jiǎn)單實(shí)現(xiàn)方法
- 完美解決thinkphp驗(yàn)證碼出錯(cuò)無(wú)法顯示的方法
- ThinkPHP驗(yàn)證碼使用簡(jiǎn)明教程
- thinkphp3.2點(diǎn)擊刷新生成驗(yàn)證碼
- 詳解ThinkPHP3.2.3驗(yàn)證碼顯示、刷新、校驗(yàn)
- thinkphp自帶驗(yàn)證碼全面解析
- thinkPHP中驗(yàn)證碼的簡(jiǎn)單實(shí)現(xiàn)方法
- ThinkPHP3.2.1圖片驗(yàn)證碼實(shí)現(xiàn)方法
- ThinkPHP驗(yàn)證碼和分頁(yè)實(shí)例教程
- tp5(thinkPHP5框架)captcha驗(yàn)證碼配置及驗(yàn)證操作示例
相關(guān)文章
Laravel項(xiàng)目中timeAgo字段語(yǔ)言轉(zhuǎn)換的改善方法示例
這篇文章主要給大家介紹了關(guān)于Laravel項(xiàng)目中timeAgo字段語(yǔ)言轉(zhuǎn)換的改善方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Laravel具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-09-09
php 升級(jí)到 5.3+ 后出現(xiàn)的一些錯(cuò)誤,如 ereg(); ereg_replace(); 函數(shù)報(bào)錯(cuò)
這篇文章主要介紹了php 升級(jí)到 5.3+ 后出現(xiàn)的一些錯(cuò)誤,如 ereg(); ereg_replace(); 函數(shù)報(bào)錯(cuò) 的相關(guān)資料,需要的朋友可以參考下2015-12-12
PHP+Mysql+Ajax+JS實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)
最近做了個(gè)項(xiàng)目,需要用到省市區(qū)三級(jí)聯(lián)動(dòng),上網(wǎng)翻了不少資料,于是有了下面的思路和代碼2014-05-05
ThinkPHP5.1+Ajax實(shí)現(xiàn)的無(wú)刷新分頁(yè)功能示例
這篇文章主要介紹了ThinkPHP5.1+Ajax實(shí)現(xiàn)的無(wú)刷新分頁(yè)功能,結(jié)合實(shí)例形式詳細(xì)分析了ThinkPHP5.1+Ajax無(wú)刷新分頁(yè)具體原理、前臺(tái)數(shù)據(jù)發(fā)送與后臺(tái)處理相關(guān)操作技巧,需要的朋友可以參考下2020-02-02
在VS?Code?中調(diào)試遠(yuǎn)程服務(wù)器的PHP代碼詳解
這篇文章主要介紹了在VSCode中調(diào)試遠(yuǎn)程服務(wù)器的PHP代碼,這里通過(guò)xdebug配合vscode的php?debug插件來(lái)實(shí)現(xiàn),本文結(jié)合實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-07-07
yii2中的rules 自定義驗(yàn)證規(guī)則詳解
yii2的一個(gè)強(qiáng)大之處之一就是他的Form組件,既方便又安全。本文給大家介紹yii2中的rules 自定義驗(yàn)證規(guī)則,需要的朋友參考下2016-04-04
php提交表單時(shí)保留多個(gè)空格及換行的文本樣式的方法
下面小編就為大家?guī)?lái)一篇php提交表單時(shí)保留多個(gè)空格及換行的文本樣式的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-06-06

