php中出现空白页的原因及解决方法汇总

2015-01-24信息快讯网

这篇文章主要介绍了php中出现空白页的原因及解决方法汇总,对于PHP程序开发人员来说很有参考借鉴价值,需要的朋友可以参考下

很多程序员在进行php开发的时候都遇到过出现空白页的请,综合分析来说,在php编程中出现空白页面可能是由以下几个原因造成的:

1、逻辑错误

逻辑错误是最难排除的,从表面上看,也许代码是合法的,是正规的,可运行起来却不是预料之中的。为什么呢?也许是编写者想得不够全面,毕竟人是人,计算机是计算机,计算机不可能完全按照人的思路去运行脚本。在这里,我告诉大家一个比较好的调试方法,就是使用注释符“/* */”,注释掉一些代码,观察运行情况,以此来逐个排除错误,最终找到错误代码的位置。这种情况下要想完全排除逻辑错误,没有耐心是不行的,所以要静下心来,不要着急。

2、行为未定义

看下面的代码:

<?php
$action = $_GET['id'];
if($action == '')
$action = 1;
if($action == 1) {
echo("/$action's value is 1");
} else if($action == 2) {
echo("/$action's value is 2");
}
?>

这段代码大家看得很明白,就是如果$action变量为空时将它设为1,然后判断$action变量的值而做出不同的事件。当然,假如$action既不等于1,也不等于2的时候,PHP会做什么呢?答案是――什么也不会做,所以就会产生了空白的页面。知道了原因,解决就容易了。关于这个问题的解决,很简单,在 if模块后加一个else就可以了,打印一些信息即可。

3、语法错误

大家可能会问了,如果出现语法错误,一般会有错误提示的,怎么会空白呢?当然,这只是一些个别现象,在某些主页空间中,如果你写得PHP有语法错误,它也不会有任何提示。解决也很容易,在上传文件之前在本地测试,找出错误的代码进行改正。

4、滥用错误屏蔽符@

错误抑制符“@”常常用于可能会发生错误的地方,但是抑制符使用过多或使用得不是时候,也可能导致空白也免得出现,来看看下面两个PHP脚本:

test1.php:

<?php
@include("test2.php");
echo($var);
?>

test2.php:

<?php
$var = "Hi" //这行代码有错误,没有分号
$var1 = "Hello" //同上
?>

运行test1看看,结果就产生了空白的页面。纠正也很简单,可以去掉include函数前面的抑制符,或者更正test2.php文件中的错误。

ThinkPHP采用原生query实现关联查询left join实例
php面象对象数据库操作类实例
PHP实现的比较完善的购物车类
phpstorm配置Xdebug进行调试PHP教程
php页面函数设置超时限制的方法
phpstorm编辑器乱码问题解决
php查找字符串出现次数的方法
Codeigniter购物车类不能添加中文的解决方法
ThinkPHP提交表单时默认自动转义的解决方法
ThinkPHP控制器里javascript代码不能执行的解决方法
php集成环境xampp中apache无法启动问题解决方案
PHP采用get获取url汉字出现乱码的解决方法
php使用fgetcsv读取csv文件出现乱码的解决方法
PHP动态编译出现Cannot find autoconf的解决方法
ThinkPHP入库出现两次反斜线转义及数据库类转义的解决方法
PHP正则表达式替换站点关键字链接后空白的解决方法
PHP 只允许指定IP访问(允许*号通配符过滤IP)
php之Smarty模板使用方法示例详解
高性能PHP框架Symfony2经典入门教程
Thinkphp的volist标签嵌套循环使用教程
PHP实现生成透明背景的PNG缩略图函数分享
PHP的error_reporting错误级别变量对照表
PHP的fsockopen、pfsockopen函数被主机商禁用的解决办法
phpmailer在服务器上不能正常发送邮件的解决办法
用PHP解决的一个栈的面试题
ThinkPHP实现多数据库连接的解决方法
ThinkPHP框架实现session跨域问题的解决方法
destoon在360浏览器下出现用户被强行注销的解决方法
destoon后台网站设置变成空白的解决方法
destoon网站转移服务器后搜索汉字出现乱码的解决方法
destoon安装出现Internal Server Error的解决方法
windows下配置apache+php+mysql时出现问题的处理方法
CI框架自动加载session出现报错的解决办法
©2014-2024 dbsqp.com