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内存不够用的快速解决方法
Oct 26 PHP
ThinkPHP中的常用查询语言汇总
Aug 22 PHP
CI框架中redis缓存相关操作文件示例代码
May 17 PHP
PHP分页初探 一个最简单的PHP分页代码的简单实现
Jun 21 PHP
CI(CodeIgniter)框架视图中加载视图的方法
Mar 24 PHP
PHP 实现人民币小写转换成大写的方法及大小写转换函数
Nov 17 PHP
PHP实现动态添加XML中数据的方法
Mar 30 PHP
PHP实现链表的定义与反转功能示例
Jun 09 PHP
Laravel5框架添加自定义辅助函数的方法
Aug 01 PHP
workerman结合laravel开发在线聊天应用的示例代码
Oct 30 PHP
Yii2框架配置文件(Application属性)与调试技巧实例分析
May 27 PHP
PhpSpreadsheet设置单元格常用操作汇总
Nov 13 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时间不正确的解决方法
2008/04/09 PHP
PHP中list方法用法示例
2016/12/01 PHP
php设计模式之工厂方法模式分析【星际争霸游戏案例】
2020/01/23 PHP
IE Firefox 使用自定义标签的区别
2009/10/15 Javascript
jQuery中extend函数详解
2015/02/13 Javascript
javascript实现回到顶部特效
2015/05/06 Javascript
基于JavaScript制作霓虹灯文字 代码 特效
2015/09/01 Javascript
分享自己用JS做的扫雷小游戏
2016/02/17 Javascript
JavaScript中的各种操作符使用总结
2016/05/26 Javascript
每日十条JavaScript经验技巧(二)
2016/06/23 Javascript
简单实现js选项卡切换效果
2017/02/09 Javascript
微信小程序  http请求封装详解及实例代码
2017/02/15 Javascript
jQuery实现选项卡功能(两种方法)
2017/03/08 Javascript
vue-router实现tab标签页(单页面)详解
2017/10/17 Javascript
JavaScript canvas绘制折线图
2020/02/18 Javascript
vue结合el-upload实现腾讯云视频上传功能
2020/07/01 Javascript
element日历calendar组件上月、今天、下月、日历块点击事件及模板源码
2020/07/27 Javascript
[02:18]《我与DAC》之工作人员:为了热爱DOTA2的玩家们
2018/03/28 DOTA
Python捕捉和模拟鼠标事件的方法
2015/06/03 Python
python类和继承用法实例
2015/07/07 Python
python函数局部变量用法实例分析
2015/08/04 Python
Python实现字符串反转的常用方法分析【4种方法】
2017/09/30 Python
Django实现简单网页弹出警告代码
2019/11/15 Python
Flask 上传自定义头像的实例详解
2020/01/09 Python
浅谈keras的深度模型训练过程及结果记录方式
2020/01/24 Python
详解基于Jupyter notebooks采用sklearn库实现多元回归方程编程
2020/03/25 Python
CSS3盒子模型详解
2013/04/24 HTML / CSS
html5简单示例_动力节点Java学院整理
2017/07/07 HTML / CSS
芝加哥牛排公司:Chicago Steak Company
2018/10/31 全球购物
大学生实习自我鉴定
2013/12/11 职场文书
大学班长的职责
2014/01/27 职场文书
庆国庆国旗下讲话稿2014
2014/09/21 职场文书
JS Object构造函数之Object.freeze
2021/04/28 Javascript
Java移除无效括号的方法实现
2021/08/07 Java/Android
Redis 常见使用场景
2021/08/30 Redis
vue组件冲突之引用另一个组件出现组件不显示的问题
2022/04/13 Vue.js