在php編程中出現空白頁面可能是由以下幾個原因造成的
邏輯錯誤
邏輯錯誤是最難排除的
從表面上看
也許代碼是合法的
是正規的
可運行起來卻不是預料之中的
為什麼呢?也許是編寫者想得不夠全面
畢竟人是人
計算機是計算機
計算機不可能完全按照人的思路去運行腳本
在這裡
我告訴大家一個比較好的調試方法
就是使用注釋符
/* */
注釋掉一些代碼
觀察運行情況
要想完全排除邏輯錯誤
沒有耐心是不行的
所以要靜下心來
不要著急
行為未定義
看下面的代碼
<?php
$action = $_GET[
id
];
if($action ==
)
$action =
;
if($action ==
) {
echo(
/$action
s value is
);
} else if($action ==
) {
echo(
/$action
s value is
);
}
?>
這段代碼大家看得很明白
就是如果$action變量為空時將它設為
然後判斷$action變量的值而做出不同的事件
當然
假如$action既不等於
也不等於
的時候
PHP會做什麼呢??——什麼也不會做
所以就會產生了空白的頁面
知道了原因
解決就容易了
關於這個問題的解決
很簡單
在 if模塊後加一個else就可以了
打印一些信息即可
語法錯誤
大家可能會問了
如果出現語法錯誤
一般會有錯誤提示的
怎麼會空白呢?當然
這只是一些個別現象
在某些主頁空間中(比如中國聚網的免費空間)
如果你寫得PHP有語法錯誤
它也不會有任何提示
解決也很容易
在上傳文件之前在本地測試
找出錯誤的代碼進行改正
(www
lian
com)
濫用錯誤屏蔽符@
錯誤抑制符
@
常常用於可能會發生錯誤的地方
但是抑制符使用過多或使用得不是時候
也可能導致空白也免得出現
來看看下面兩個PHP腳本吧
test
php
<?php
@include(
test
php
);
echo($var);
?>
test
php
<?php
$var =
Hi
//這行代碼有錯誤
沒有分號
$var
=
Hello
//同上
?>
運行test
看看
結果就產生了空白的頁面
糾正也很簡單
可以去掉include函數前面的抑制符
或者更正test
php文件中的錯誤
From:http://tw.wingwit.com/Article/program/PHP/201311/21005.html