Home >Backend Development >PHP Tutorial >PHP空白页面常见原因及解决方法_PHP

PHP空白页面常见原因及解决方法_PHP

WBOY
WBOYOriginal
2016-06-01 12:31:161431browse

编写PHP,难免会出现错误。其实出现错误也不难解决,最难解决的是出现空白页面。大家想想看,若编写PHP出现错误,可以根据错误的提示来改正,倘若PHP什么也不给你显示,那岂不是让编写者困挠不以?下面,我就把我在编写PHP时总结出来的有关PHP空白页面的解决方法以及产生原因。当然,本人写PHP并不是很高手,所以如果有错误,请不惜指出。

1、动作未定义
先请大家看一看下面的代码:
[code]
$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");
}
?>
[/code]
这段代码大家看得很明白,就是如果$action变量为空时将它设为1,然后判断$action变量的值而做出不同的事件。当然,假如$action既不等于1,也不等于2的时候,PHP会做什么呢??——什么也不会做,所以就会产生了空白的页面。知道了原因,解决就容易了。关于这个问题的解决,很简单,在if模块后加一个else就可以了。

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

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

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

以下内容为程序代码:

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

test2.php
以下内容为程序代码:

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

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

其实,产生空白页面的原因可能会是更复杂、更难排除的原因,这里所列出来的只是最有可能出现的,只要认真分析了代码,其实排除错误也是很简单的事情。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn