一旦我尝试添加单行注释(例如//comment),它就会阻止注释后面的任何函数运行。
昨天,在同一台服务器上有相同的代码,这不是问题,只要我删除注释,代码就会完美运行。
如果我使用多行注释(例如/*comment*/),代码也可以完美运行。
我想问的是,是否有人知道为什么会发生这种情况,以及我是否可以做些什么来阻止单行注释影响我的代码?
是否有任何设置会对此产生影响?
以前有人遇到过这个问题吗?
示例:
<?php
session_start();
require_once('includes.php');
page_header('Task List');
page_navigation('tasklist.php', $dbh);
echo 'Success -1';
/* Comment */
$stmt = $dbh->prepare("SELECT * FROM task WHERE user_id = ? ORDER BY priority ASC");
echo 'Success 0';
// If the user is admin use the chosen client_id
if($_SESSION['user']['user_id'] === '1'){
$stmt->execute(array($_SESSION['client_id']));
echo 'Success 1';
}else{
// Otherwise use the user's user_id
$stmt->execute(array($_SESSION['user']['user_id']));
echo 'Success 2';
}?>
Success-1和Success0都得到了响应,但单行//注释之后的任何内容都不会运行。如果我去掉评论,它就会运行,成功1也会得到响应。
我不是php程序员,但在十六进制编辑器中检查您的换行符编码,可能是您的解释器接受'r'n
换行符,但您的脚本只有'n
或类似的内容。
//
将对整行进行注释,因此,无论您在该行中添加了什么,都将成为注释,但/**/
将只考虑/*
和*/
下的内容。因此,即使您在*/
之后添加了任何内容,也不会被视为注释。
请参阅此链接