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 相关文章推荐
php合并数组array_merge函数运算符加号与的区别
Oct 31 PHP
用php解析html的实现代码
Aug 08 PHP
PHP 杂谈《重构-改善既有代码的设计》之五 简化函数调用
May 07 PHP
基于empty函数的判断详解
Jun 17 PHP
C#静态方法与非静态方法实例分析
Sep 22 PHP
PHP读取PPT文件的方法
Dec 10 PHP
PHP的全局错误处理详解
Apr 25 PHP
php+MySql实现登录系统与输出浏览者信息功能
Jul 01 PHP
PHP设置Cookie的HTTPONLY属性方法
Feb 09 PHP
yii2.0整合阿里云oss删除单个文件的方法
Sep 19 PHP
laravel orm 关联条件查询代码
Oct 21 PHP
php操作redis常见方法示例【key与value操作】
Apr 14 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
PHP 网页过期时间的控制代码
2009/06/29 PHP
PHP 使用memcached简单示例分享
2015/03/05 PHP
PHP中strpos、strstr和stripos、stristr函数分析
2016/06/11 PHP
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
自用js开发框架小成 学习js的朋友可以看看
2010/11/16 Javascript
file模式访问网页时iframe高度自适应解决方案
2013/01/16 Javascript
javascript打印输出json实例
2013/11/11 Javascript
jsMind通过鼠标拖拽的方式调整节点位置
2015/04/13 Javascript
jquery衣服颜色选取插件效果代码分享
2015/08/28 Javascript
js实现跨域访问的三种方法
2015/12/09 Javascript
javascript之with的使用(阿里云、淘宝使用代码分析)
2016/10/11 Javascript
全面总结Javascript对数组对象的各种操作
2017/01/22 Javascript
Vue.js自定义事件的表单输入组件方法
2018/03/08 Javascript
vue如何判断dom的class
2018/04/26 Javascript
Vue不能检测到Object/Array更新的情况的解决
2018/06/26 Javascript
JavaScript函数式编程(Functional Programming)箭头函数(Arrow functions)用法分析
2019/05/22 Javascript
JavaScript函数Call、Apply原理实例解析
2020/02/17 Javascript
JavaScript Window浏览器对象模型原理解析
2020/05/30 Javascript
[52:39]完美世界DOTA2联赛PWL S3 CPG vs Forest 第一场 12.16
2020/12/17 DOTA
Python中的并发处理之asyncio包使用的详解
2018/04/03 Python
python实现美团订单推送到测试环境,提供便利操作示例
2019/08/09 Python
pandas和spark dataframe互相转换实例详解
2020/02/18 Python
matlab灰度图像调整及imadjust函数的用法详解
2020/02/27 Python
python suds访问webservice服务实现
2020/06/26 Python
IE8下CSS3选择器nth-child() 不兼容问题的解决方法
2016/11/16 HTML / CSS
详解html5 canvas 微信海报分享(个人爬坑)
2018/01/12 HTML / CSS
伦敦所有西区剧院演出官方票务代理:Theatre Tickets Direct
2017/05/26 全球购物
全球立体声:World Wide Stereo
2018/09/29 全球购物
软件缺陷的分类都有哪些
2014/08/22 面试题
小学教学随笔感言
2014/02/26 职场文书
大学军训感言1500字
2014/03/09 职场文书
服务标语口号
2014/07/01 职场文书
学雷锋献爱心倡议书
2015/04/27 职场文书
刑事上诉状(量刑过重)
2015/05/23 职场文书
详解分布式系统中如何用python实现Paxos
2021/05/18 Python
Docker官方工具docker-registry案例演示
2022/04/13 Servers