当我在某个地方添加echo时,我的php代码可以正常工作,但是当我删除simpleecho "hello";行时,它不会加载php页面,它只显示服务器错误500。
以下代码有效:require 'steam.php';
$steam = new steam();
$api = "FC1D74A835829EB99A571235A499638A";
$query = 'ari9';
$communityID = $steam->getID($query, $api);
$userInfo = $steam->getUserInfo($communityID, $api);
echo "hello";
$info = array(
'communityID' => $communityID,
'steamID' => $steam->$convertToSteamID($communityID),
'personaname' => $userInfo['personaname'],
'profileurl' => $userInfo['profileurl'],
'lastlogoff' => $userInfo['lastlogoff'],
);
foreach ($info as $key => $value) {
if (strlen($value)===0) {
$info[$key] = false;
}
echo $key." -> ".$value."
";
}
echo json_encode($info);
以下代码不起作用:
require 'steam.php';
$steam = new steam();
$api = "FC1D74A835829EB99A571235A499638A";
$query = 'ari9';
$communityID = $steam->getID($query, $api);
$userInfo = $steam->getUserInfo($communityID, $api);
$info = array(
'communityID' => $communityID,
'steamID' => $steam->$convertToSteamID($communityID),
'personaname' => $userInfo['personaname'],
'profileurl' => $userInfo['profileurl'],
'lastlogoff' => $userInfo['lastlogoff'],
);
foreach ($info as $key => $value) {
if (strlen($value)===0) {
$info[$key] = false;
}
echo $key." -> ".$value."
";
}
echo json_encode($info);
以下代码不起作用:
require 'steam.php';
$steam = new steam();
$api = "FC1D74A835829EB99A571235A499638A";
$query = 'ari9';
$communityID = $steam->getID($query, $api);
$userInfo = $steam->getUserInfo($communityID, $api);
$info = array(
'communityID' => $communityID,
'steamID' => $steam->$convertToSteamID($communityID),
'personaname' => $userInfo['personaname'],
'profileurl' => $userInfo['profileurl'],
'lastlogoff' => $userInfo['lastlogoff'],
);
foreach ($info as $key => $value) {
if (strlen($value)===0) {
$info[$key] = false;
}
echo $key." -> ".$value."
";
}
echo json_encode($info);
echo "Hello";
第一段代码在第9行有回音,第二段代码与第一段代码相同,只是删除了第9行的回音。我对此感到困惑。
最佳答案
问题是这个$steam->$convertToSteamID正在寻找一个名为变量值的函数。当没有回音时得到500是因为当你发送的回音是200。日志中应该有显示错误的事件。一个页面上不能有两个状态代码。
所以只要将函数调用改为:$steam->convertToSteamID
你应该没事的。