2 回答

TA貢獻(xiàn)1820條經(jīng)驗 獲得超10個贊
在 PHP 7.2 中,如果您對不可數(shù)的變量調(diào)用 count(),PHP 會顯示有關(guān)它的警告。一個常見的解決方法是在調(diào)用 count() 之前檢查給定變量是否是“可數(shù)”。
“可數(shù)”變量可以是數(shù)組,也可以是實現(xiàn) \Countable 接口的類的對象。因為可能有很多樣板代碼,所以 PHP 7.3 現(xiàn)在有一個新的 is_countable() 函數(shù),如果傳遞的變量是……嗯……可數(shù),則該函數(shù)返回 true。
https://php.watch/versions/7.3#new-is_countable-function
我會做這樣的事情:
if(isset($_matchup['franchise'][$m]['player']) && is_countable($_matchup['franchise'][$m]['player']) {
for($k=0;$k<count($_matchup['franchise'][$m]['player']);$k++){
...
}
}
如果你的版本低于 7.3,請將這個 polyfill 放入你的代碼中:
if (!function_exists('is_countable')) {
function is_countable($var) {
return is_array($var)
|| $var instanceof Countable
|| $var instanceof ResourceBundle
|| $var instanceof SimpleXmlElement;
}
}

TA貢獻(xiàn)1831條經(jīng)驗 獲得超10個贊
請確保它$_matchup['franchise'][$m]['player']
實際上是一個可以計數(shù)的變量。正如錯誤消息所示。
比如數(shù)組
這行代碼應(yīng)該兼容 PHP5 和 PHP7
- 2 回答
- 0 關(guān)注
- 217 瀏覽