所以我有一個變量和一個函數不能證明我的思維過程。如何有條件地輸出在php中不存在的變量?
代碼:
$variable = "This is a string!";
function is($var)
{
if(isset ($var))
return true;
return false;
}
if(is ($variable))
echo "This variable exists!";
else
echo "This variable does not exist!";
輸出:
This variable exists!
因爲$變量存在,此功能將正常工作,但在$變量尚未設置或定義的問題。
代碼:
function is($var)
{
if(isset ($var))
return true;
return false;
}
if(is ($variable))
echo "This variable exists!";
else
echo "This variable does not exist!";
輸出:
Notice: Undefined variable: variable on line x
This variable does not exist!
因爲變量尚未定義,當被引用它PHP會返回一個通知,說這句話的變量,你試圖引用是不確定的。這是一個問題,因爲當變量沒有正確設置時,函數總是會創建一個通知,而這首先是爲了避免。
所以我嘗試傳遞變量名作爲字符串沒有參考。
代碼:
$variable = "This is a string";
function is($string)
{
if(isset($$string)) // Variable Variables
return $$string;
return "";
}
echo is("variable");
但是,這仍然沒有工作。我的想法就如何優雅地輸出不同的是使用短函數,而不是打字每次都:
echo (isset($variable) ? $variable : "");
我如何檢查是否引用存在,或者不使用PHP?
你爲什麼要這麼做?這似乎可能是反直覺過度優化我... –
@JamesG。這樣可以更快地輸入,更清晰地查找,並且可以根據您想要在變量不存在時全局輸出的內容輕鬆進行自定義和更改。 – Ben
你可以做'echo @ $ variable;'。 –