ThinkPHP打开验证码页面显示乱码的解决方法


Posted in PHP onDecember 18, 2014

本文实例讲述了ThinkPHP打开验证码页面显示乱码的解决方法。分享给大家供大家参考。具体分析如下:

在用thinkphp开发的时候,有时会出现验证码乱码的问题,解决方法是把如下这个文件放在根目录,访问后就可以解决了,具体的PHP代码如下:

<?php

if (isset($_GET['dir'])){ //设置文件目录   

$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程序设计有所帮助。

PHP 相关文章推荐
实时抓取YAHOO股票报价的代码
Oct 09 PHP
PHP CURL CURLOPT参数说明(curl_setopt)
Sep 30 PHP
php+mysql不用递归实现的无限级分类实例(非递归)
Jul 08 PHP
ThinkPHP做文字水印时提示call an undefined function exif_imagetype()解决方法
Oct 30 PHP
PHP简单操作MongoDB的方法(安装及增删改查)
May 26 PHP
php实现压缩合并js的方法【附demo源码下载】
Sep 22 PHP
PHP 闭包详解及实例代码
Sep 28 PHP
php自定义函数br2nl实现将html中br换行符转换为文本输入中换行符的方法【与函数nl2br功能相反】
Feb 17 PHP
老生常谈PHP 文件写入和读取(必看篇)
May 22 PHP
PHP实现广度优先搜索算法(BFS,Broad First Search)详解
Sep 16 PHP
PHP数组式访问接口ArrayAccess用法分析
Dec 28 PHP
PHP pthreads v3下的Volatile简介与使用方法示例
Feb 21 PHP
ThinkPHP中使用ajax接收json数据的方法
Dec 18 #PHP
2014最热门的24个php类库汇总
Dec 18 #PHP
ThinkPHP通过AJAX返回JSON的两种实现方法
Dec 18 #PHP
ThinkPHP内置jsonRPC的缺陷分析
Dec 18 #PHP
yiic命令时提示“php.exe”不是内部或外部命令的解决方法
Dec 18 #PHP
php生成二维码时出现中文乱码的解决方法
Dec 18 #PHP
php判断文件上传类型及过滤不安全数据的方法
Dec 17 #PHP
You might like
ajax返回值中有回车换行、空格的解决方法分享
2013/10/24 PHP
WordPress开发中短代码的实现及相关函数使用技巧
2016/01/05 PHP
一段实用的php验证码函数
2016/05/19 PHP
浅谈PHP封装CURL
2019/03/06 PHP
js与jquery获取父元素,删除子元素的两种不同方法
2014/01/09 Javascript
JS中的Replace方法使用经验分享
2015/05/20 Javascript
JS留言功能的简单实现案例(推荐)
2016/06/23 Javascript
关于angular js_$watch监控属性和对象详解
2017/04/24 Javascript
javscript 数组扁平化的实现
2020/02/03 Javascript
jquery css实现流程进度条
2020/03/26 jQuery
vue循环中点击选中再点击取消(单选)的实现
2020/09/10 Javascript
[01:08:33]OG vs VGJ.T 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
[57:29]Alliance vs KG 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/17 DOTA
[49:12]完美世界DOTA2联赛PWL S2 Magma vs GXR 第二场 11.29
2020/12/02 DOTA
如何搜索查找并解决Django相关的问题
2014/06/30 Python
python获取文件扩展名的方法
2015/07/06 Python
浅谈python为什么不需要三目运算符和switch
2016/06/17 Python
解决Django模板无法使用perms变量问题的方法
2017/09/10 Python
python使用PyCharm进行远程开发和调试
2017/11/02 Python
Python实现进程同步和通信的方法
2018/01/02 Python
tensorflow1.0学习之模型的保存与恢复(Saver)
2018/04/23 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
2020/01/06 Python
matplotlib 范围选区(SpanSelector)的使用
2021/02/24 Python
CSS3自定义滚动条样式的示例代码
2017/08/21 HTML / CSS
HTML5新增属性data-*和js/jquery之间的交互及注意事项
2017/08/08 HTML / CSS
升职自荐信范文
2013/10/05 职场文书
行政专员岗位职责
2014/01/02 职场文书
项目计划书范文
2014/01/09 职场文书
应届生自荐信范文
2014/02/21 职场文书
区级文明单位申报材料
2014/05/15 职场文书
说好普通话圆梦你我他演讲稿
2014/09/21 职场文书
2015年教师节广播稿
2015/08/19 职场文书
《鲸》教学反思
2016/02/23 职场文书
2016年社会管理综治宣传月活动总结
2016/03/16 职场文书
golang连接MySQl使用sqlx库
2022/04/14 Golang
windows server 2016 域环境搭建的方法步骤(图文)
2022/06/25 Servers