此代碼中必須存在明顯的錯誤,但我沒有看到它。介意看看?從數組中獲取值時出現非法字符串偏移警告
以下代碼返回
string
fleet
Warning: Illegal offset type (line 6)
的子程序任務部隊只是拉.ini文件,讀取它到一個數組,並返回該數組,它在foreach然後迭代通過。在相關部分,數組看起來像這樣。
; this is an INI file
[scout]
type = "fleet"
下面是代碼:
foreach($_SESSION['ini']->taskforces() as $key => $val)
{
echo gettype($val["type"]);
echo $val["type"];
if($val["type"] == "fleet") {
$commanderData[$val] = "BLOB";
$commanderData["sc$val"] = "INT NOT NULL";
}
}
我想不會有非法偏移類型,因爲我想要的代碼要經過if條件。我錯過了什麼明顯的東西?
謝謝。
不,那是不對的。如果你看看Ini文件的結構,你會發現數據實際上是一個矩陣,所以$ key =「scout」和$ value = array([type] =>「fleet」)。我發現錯誤,我會盡快發佈解決方案。 –