我有一個存儲在$ _SESSION變量中的數組(mysql查詢結果)。爲什麼我只能獲取存儲在Session中的第一個字符?
現在,我試圖訪問一個成員數組像:現在
$_SESSION["template"]["key"]
,問題是它給字符串「鍵」的只有第一個字符。奇怪的是,它在本地主機上完美運行,並且也在我以前的主機上運行。 (我現在在hostgator上)。
我在做什麼錯?
我有一個存儲在$ _SESSION變量中的數組(mysql查詢結果)。爲什麼我只能獲取存儲在Session中的第一個字符?
現在,我試圖訪問一個成員數組像:現在
$_SESSION["template"]["key"]
,問題是它給字符串「鍵」的只有第一個字符。奇怪的是,它在本地主機上完美運行,並且也在我以前的主機上運行。 (我現在在hostgator上)。
我在做什麼錯?
這意味着您$_SESSION["template"]
變量是一個串,從而,$_SESSION["template"]["key"]
評估以$_SESSION["template"][0]
並返回第一個字符。
爲什麼你的$ _SESSION [「模板」]是一個字符串,而不是一個數組 - 是一個調試問題。您可以立即開始。
如果您對register_globals
和一些變量,名爲$tamplate
,它可能改寫$ _SESSION內容
的問題是,$_SESSION["template"]
不是一個數組而是一個字符串。 ["key"]
被視爲指數[0]
導致的第一個字符
所以你的代碼是一樣的$_SESSION["template"][0]
哦!那麼,有沒有辦法呢?除了我必須分開存儲變量。 –
@ShashankJain:爲了能夠做到這一點,您必須將「模板」作爲一個數組。你的「模板」目前是一個字符串 – genesis
,但我將mysql_fetch_array的結果存儲到$ _SESSION [「template」]中。 –
我恨鴨子類型 – gd1
好的,知道了。然後我必須分開存儲所有變量。沒有辦法在SESSION中存儲數組和其他數據類型嗎? –
如這裏演示==> http://codepad.viper-7.com/iSqR70 –