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安全配置方法
Jun 16 PHP
PHP获取当前文件所在目录 getcwd()函数
May 13 PHP
php自定义函数call_user_func和call_user_func_array详解
Jul 14 PHP
PHP 循环删除无限分类子节点的实现代码
Jun 21 PHP
解析在zend Farmework下如何创立一个FORM表单
Jun 28 PHP
windows7下安装php的imagick和imagemagick扩展教程
Jul 04 PHP
Windows7下的php环境配置教程
Feb 28 PHP
php输出xml属性的方法
Mar 19 PHP
php商品对比功能代码分享
Sep 24 PHP
Laravel 5.4重新登录实现跳转到登录前页面的原理和方法
Jul 13 PHP
php 可变函数使用小结
Jun 12 PHP
jQuery ajax+PHP实现的级联下拉列表框功能示例
Feb 12 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 登录记住密码实现思路
2013/05/07 PHP
PHP中Session引起的脚本阻塞问题解决办法
2014/04/08 PHP
PHP实现在线阅读PDF文件的方法
2015/06/23 PHP
PHP随机获取未被微信屏蔽的域名(微信域名检测)
2017/03/19 PHP
web网页按比例显示图片实现原理及js代码
2013/08/09 Javascript
Html5的placeholder属性(IE兼容)实现代码
2014/08/30 Javascript
让JavaScript和其它资源并发下载的方法
2014/10/16 Javascript
JS实现文字放大效果的方法
2015/03/03 Javascript
Node.js实用代码段之正确拼接Buffer
2016/03/17 Javascript
Bootstrap前端开发案例一
2016/06/17 Javascript
promise处理多个相互依赖的异步请求(实例讲解)
2017/08/03 Javascript
JS获取数组中出现次数最多及第二多元素的方法
2017/10/27 Javascript
浅谈实现vue2.0响应式的基本思路
2018/02/13 Javascript
vue新vue-cli3环境配置和模拟json数据的实例
2018/09/19 Javascript
前端天气插件tpwidget使用方法详解
2019/06/24 Javascript
JavaScript鼠标悬停事件用法解析
2020/05/15 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
Python探索之SocketServer详解
2017/10/28 Python
Python Numpy库安装与基本操作示例
2019/01/08 Python
Pycharm 设置默认头的图文教程
2019/01/17 Python
python GUI库图形界面开发之pyinstaller打包python程序为exe安装文件
2020/02/26 Python
PyCharm GUI界面开发和exe文件生成的实现
2020/03/04 Python
解决python脚本中error: unrecognized arguments: True错误
2020/04/20 Python
使用python matploblib库绘制准确率,损失率折线图
2020/06/16 Python
CSS Grid布局教程之什么是网格布局
2014/12/30 HTML / CSS
html5定位并在百度地图上显示的示例
2014/04/27 HTML / CSS
将一个数的从第5位开始的7个数取出,其余位置0
2016/05/26 面试题
Oracle快照(snapshot)
2015/03/13 面试题
小学生勤俭节约倡议书
2015/04/29 职场文书
国富论读书笔记
2015/06/26 职场文书
诚信考试主题班会
2015/08/17 职场文书
任命书格式模板
2015/09/22 职场文书
假期读书倡议书3篇
2019/08/19 职场文书
2019年教师节活动策划方案
2019/09/09 职场文书
CSS实现漂亮的时钟动画效果的实例代码
2021/03/30 HTML / CSS
JavaScript中isPrototypeOf函数
2021/11/07 Javascript