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


Posted in PHP onJuly 08, 2014

很多程序员在进行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文件中的错误。

PHP 相关文章推荐
一些PHP写的小东西
Dec 06 PHP
php REMOTE_ADDR之获取访客IP的代码
Apr 22 PHP
php array_slice函数的使用以及参数详解
Aug 30 PHP
PHP 编写的 25个游戏脚本
May 11 PHP
一步一步学习PHP(7) php 字符串相关应用
Mar 05 PHP
php IP转换整形(ip2long)的详解
Jun 06 PHP
Windows下编译PHP5.4和xdebug全记录
Apr 03 PHP
php使用COPY函数更新配置文件的方法
Jun 18 PHP
centos+php+coreseek+sphinx+mysql之一coreseek安装篇
Oct 25 PHP
php PDO异常处理详解
Nov 20 PHP
自定义Laravel (monolog)日志位置,并增加请求ID的实现
Oct 17 PHP
Laravel框架实现抢红包功能示例
Oct 31 PHP
php之Smarty模板使用方法示例详解
Jul 08 #PHP
高性能PHP框架Symfony2经典入门教程
Jul 08 #PHP
Thinkphp的volist标签嵌套循环使用教程
Jul 08 #PHP
PHP实现生成透明背景的PNG缩略图函数分享
Jul 08 #PHP
PHP的error_reporting错误级别变量对照表
Jul 08 #PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
Jul 08 #PHP
php+mysql不用递归实现的无限级分类实例(非递归)
Jul 08 #PHP
You might like
php.ini中的php-5.2.0配置指令详解
2008/03/27 PHP
php数组函数序列之next() - 移动数组内部指针到下一个元素的位置,并返回该元素值
2011/10/31 PHP
is_uploaded_file函数引发的不能上传文件问题
2013/10/29 PHP
ThinkPHP Mobile使用方法简明教程
2014/06/18 PHP
PHP实现文件上传与下载
2020/08/28 PHP
JavaScript 事件冒泡简介及应用
2010/01/11 Javascript
基于JQuery的Pager分页器实现代码
2010/07/17 Javascript
js判断浏览器版本以及浏览器内核的方法
2015/01/20 Javascript
jQuery实现contains方法不区分大小写的方法
2015/02/13 Javascript
JavaScript+html5 canvas制作的圆中圆效果实例
2016/01/27 Javascript
Bootstrap教程JS插件滚动监听学习笔记分享
2016/05/18 Javascript
jQuery实现的放大镜效果示例
2016/09/13 Javascript
js中数组插入、删除元素操作的方法
2017/02/15 Javascript
基于JS实现网页中的选项卡(两种方法)
2017/06/16 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
jQuery实现点击图标div循环放大缩小功能
2018/09/30 jQuery
微信小程序实现Session功能及无法获取session问题的解决方法
2019/05/07 Javascript
javascript实现遮罩层动态效果实例
2019/05/14 Javascript
jquery实现吸顶导航效果
2020/01/08 jQuery
JavaScript 判断浏览器是否是IE
2021/02/19 Javascript
python3.5使用tkinter制作记事本
2016/06/20 Python
pytorch 自定义卷积核进行卷积操作方式
2019/12/30 Python
python logging.basicConfig不生效的原因及解决
2020/02/20 Python
pycharm配置QtDesigner的超详细方法
2021/01/25 Python
HTML5 实现一个访问本地文件的实例
2012/12/13 HTML / CSS
意大利奢侈品购物网站:Giglio
2018/01/05 全球购物
意大利奢侈品牌在线精品店:Jole.it
2020/11/23 全球购物
大学生职业规划范文:象牙塔生活的四年计划
2014/01/14 职场文书
创业者是否需要商业计划书?
2014/02/07 职场文书
军校大学生个人的自我评价
2014/02/17 职场文书
爱护公物标语
2014/06/24 职场文书
2014年中秋寄语
2014/08/11 职场文书
公务员中国梦演讲稿
2014/08/19 职场文书
餐厅服务员岗位职责
2015/02/09 职场文书
2015年医院工作总结范文
2015/04/09 职场文书
《战锤40K:暗潮》跳票至9月 公布新宣传片
2022/04/03 其他游戏