Laravel Blade:比較字串與對象
P粉797855790
P粉797855790 2023-09-01 21:44:49
0
1
545
<p>在將物件與 Laravel 刀片檔案中的字串進行比較時,我遇到了一個奇怪的問題。 </p> <p>我有一個變量,可以是字串(“N/A”)或對象,取決於資料庫查詢的結果,並且我有以下條件檢查:</p> <pre class="brush:php;toolbar:false;">@if ($a_string_name == 'N/A')</pre> <p>如果傳回一個對象,則對大多數使用者來說,此條件將會失敗並繼續執行 else 語句。 </p> <p>但對於一種特定情況(我沒有足夠的資訊來說明如何重現此情況),此條件會引發錯誤:</p> <pre class="brush:php;toolbar:false;">Method Illuminate\Support\Collection::__toString() must return a string value</pre> <p>我無法弄清楚出了什麼問題,或者這是否是 laravel/瀏覽器特定的問題。 </p> <p>PHP v7.4.22、laravel v6.0</p>
P粉797855790
P粉797855790

全部回覆(1)
P粉407936281

根據您上面的問題,我認為您想檢查給定值是否設定了變數。在您的情況下,請嘗試使用@if(isset($a_string_name))

我們通常使用兩種 PHP 方法來檢查變數。

如何檢查 PHP 中是否定義了變數? isset() 函數檢查變數是否已設置,這意味著變數必須聲明且不為 NULL。如果變數存在且不為 NULL,則函數傳回 true,否則傳回 false。

如何檢查給定變數是否為空? empty() 函數檢查變數是否為空。如果變數存在且不為空,則函數傳回 false,否則傳回 true。以下值計算為空:0。

希望這對您有幫助。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板