-2
這個程序有什麼問題? 它永遠不會返回,郵件永遠不會消失。如果你刪除getOrDefault函數,它可以正常工作。它不會引發錯誤或PHP 5.3.13php傳遞參考
<?php
function getOrDefault(&$var, $default = null) {
// because I'm tired of typing $x = isset($_POST['x'])? $_POST['x']:null;
if (isset($var)) {
return $var;
} else {
return $default;
}
}
$HTTP_CLIENT_IP = getOrDefault($_SERVER['HTTP_CLIENT_IP']);
mail('[email protected]', 'test', $HTTP_CLIENT_IP);
echo 'done';
?>
使用'getOrDefault'在這個片段中是沒有意義的。要查看整個圖片,請在代碼的開頭添加「error_reporting(-1)」行。 – raina77ow
你爲什麼要引用它?您可以將'getOrDefault($ var,$ default = null)'放在''_SERVER ['HTTP_CLIENT_IP']'上,因爲您不會(也不會)修改它。 –
和'isset'在你的情況下是危險的。不妨把它與'$ var!=「」' –