2015-03-03 113 views
0

我試圖讓數組值的字符串,但我失敗數組值轉換爲字符串

我的數組($ EPG)看起來是這樣的:

Array 
(
) 
Array 
(
    [0] => Array 
     (
      [title] => VGhlIEZhbnRhc3kgRm9vdGJhbGwgQ2x1Yg== 
      [lang] => en 
      [start] => 1425385800 
      [end] => 1425387600 
      [description] => Sm9obiBGZW5kbGV5IGFuZCBQYXVsIE1lcnNvbiBwcmVzZW50IGEgZGlzY3Vzc2lvbiBvbiBrZXkgZmFudGFzeSBmb290YmFsbCBpc3N1ZXMsIGFzIHdlbGwgYXMgdGhlIHdlZWtlbmQncyBQcmVtaWVyIExlYWd1ZSBtYXRjaGVzLiBBbHNvIGZlYXR1cmluZyBndWVzdHMgZnJvbSB0aGUgd29ybGRzIG9mIHNwb3J0IGFuZCBzaG93Yml6Lg== 
     ) 

    [1] => Array 
     (
      [title] => QmFyY2xheXMgUHJlbWllciBMZWFndWUgUmV2aWV3 
      [lang] => en 
      [start] => 1425387600 
      [end] => 1425391200 
      [description] => QSBsb29rIGJhY2sgYXQgcmVjZW50IGZpeHR1cmVzIGluIHRoZSBFbmdsaXNoIFByZW1pZXIgTGVhZ3VlLCBhcyB0aGUgc2Vhc29uIGNvbnRpbnVlZCB3aXRoIG1hdGNoZXMgYWZmZWN0aW5nIGJvdGggZW5kcyBvZiB0aGUgdGFibGUu 
     ) 

) 
Array 
(
) 

然後我創建foreach循環,並嘗試得到的值是這樣的:

$title = $epg['title']; 
$lang = $epg['lang']; 
echo $lang; 
echo $title; 

,但我得到的錯誤:

注意:未定義指數:冠軍........注意:未定義指數: 郎.........

我猜測這種情況發生,因爲我有怪陣,這些空的數組在開始和結束。

如果是這樣,我該如何解決它?

問候 中號

+3

好友你真的需要通過基本知識 – 2015-03-03 12:57:41

+0

也許分享一些光我怎麼能得到值的字符串? – user2033139 2015-03-03 13:42:49

回答

0

使用此刪除烏爾空,然後用這個

print_r(array_filter($epg)); 

echo $title = $epg['title'] 
+0

array_filter由於某些原因不刪除空數組... – user2033139 2015-03-03 13:34:24

0

檢查您的數組不爲空

if (count($epg) != 0) 
0

你得到通知,沒有錯誤。但將它們視爲錯誤並從代碼中刪除是一種很好的做法。

這些通告有關未定義索引,所以你必須檢查,如果給定的指標是出現在數組的當前元素。你可以這樣說:

$title = array_key_exists('title',$epg) ? $epg['title'] : NULL; 

Manual

1

當你定義喜歡這裏

[0] => Array 
    (
     [title] => VGhlIEZhbnRhc3kgRm9vdGJhbGwgQ2x1Yg== 
     [lang] => en 
     [start] => 1425385800 
     [end] => 1425387600 
     [description] => Sm9obiBGZW5k... 
    ) 

數組如果沒有標題,郎等delcared因爲你需要的變量有

[0] => Array 
    (
     ['title'] => VGhlIEZhbnRhc3kgRm9vdGJhbGwgQ2x1Yg== 
     ['lang'] => en 
     ['start'] => 1425385800 
     ['end'] => 1425387600 
     ['description'] => Sm9obiBGZW5k... 
    ) 
+0

我不定義數組,我從外部網站抓取它... – user2033139 2015-03-03 13:33:49

+0

如果你從其他站點得到它,你需要知道它是如何工作的,並且我不能幫助,但上面的想法是,寫作['標題'] - 用引號,你在這個數組中添加一個「title」的鍵,並在右邊給它賦值=>。但是,像[標題]這樣寫就意味着添加一個關鍵字,即變量標題的值。如果你已經在上面聲明瞭變量標題,你可以這樣做 - title =「myVariable」; - 這次你陣列中的密鑰是「myVariable」。所以,當你使用引號時,你給它一個鍵的字符串,沒有引號,鍵是你的變量的值。 – Luchiro 2015-03-03 18:41:52