• 技术文章 >php教程 >php手册

    php中出现空白页面的原因及解决

    2016-06-13 11:35:44原创450

    在php编程中出现空白页面可能是由以下几个原因造成的:
    1、逻辑错误
    逻辑错误是最难排除的,从表面上看,也许代码是合法的,是正规的,可运行起来却不是预料之中的。为什么呢?也许是编写者想得不够全面,毕竟人是人,计算机是计算机,计算机不可能完全按照人的思路去运行脚本。在这里,我告诉大家一个比较好的调试方法,就是使用注释符“/* */”,注释掉一些代码,观察运行情况。要想完全排除逻辑错误,没有耐心是不行的,所以要静下心来,不要着急。
    2、行为未定义
    看下面的代码:
    $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有语法错误,它也不会有任何提示。解决也很容易,在上传文件之前在本地测试,找出错误的代码进行改正。(www.bkjia.com)
    4、滥用错误屏蔽符@
    错误抑制符“@”常常用于可能会发生错误的地方,但是抑制符使用过多或使用得不是时候,也可能导致空白也免得出现,来看看下面两个PHP脚本吧:
    test1.php
    @include("test2.php");
    echo($var);
    ?>
    test2.php
    $var = "Hi" //这行代码有错误,没有分号
    $var1 = "Hello" //同上
    ?>
    运行test1看看,结果就产生了空白的页面。纠正也很简单,可以去掉include函数前面的抑制符,或者更正test2.php文件中的错误。

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:PHP正则表达式的使用技巧 下一篇:自己动手写 PHP MVC 框架(40节精讲/巨细/新人进阶必看)

    相关文章推荐

    • 探讨:php中在foreach中使用foreach ($arr as &$value) 这种类型的解释• 优化使用mysql存储session的php代码• 用PHP+MySql编写聊天室• php根据用户语言跳转相应网页• 推荐10个非常实用的PHP代码片段
    1/1

    PHP中文网