警告:使用未定义的常量 fp - 假定为 'fp' - PHP 版本 7.2.34

问题描述

这个警告有问题:

Warning: Use of undefined constant fp - assumed 'fp'

我的代码是:

<?PHP
$DOCUMENT_ROOT = $_SERVER['DOCUMENT_ROOT'];
@ $fp = fopen("$DOCUMENT_ROOT/orders/orders.txt",'rb');
if (!fp) {
    echo "<p>No orders pending. Please try later.</p>";
    exit;
}
while (!feof($fp)) {
    $order = fgets ($fp,999);
    echo $order."<br />";
}
?>

我有 PHP 版本 7.2.34。 请帮我解决警告。

解决方法

您忘记在 if 条件中将 $ 放在 fp 之前。

if (!$fp) {
    echo "<p>No orders pending. Please try later.</p>";
    exit;
}
,

$之前忘记fp

如果将 $ 附加到字符串,则它是一个变量。

如果未附加 $ 而我们正在访问它,PHP 会将其视为 CONSTANT 并尝试找出它的定义位置。