2010-05-25 95 views
1

我正在嘗試使用youtube API爲我的網站下拉一些視頻。目前,我在這裏運行此代碼:

//Youtube Videos Pull Down 
$youtubeURL = "http://gdata.youtube.com/feeds/api/videos?alt=json&q=cats+cradle+chapel+hill&orderby=published&max-results=10&v=2"; 
$youtubeSearch = file_get_contents($youtubeURL, true); 
$youtubeArray = json_decode($youtubeSearch, true); 

由於沒有訪問關聯數組。然而,YouTube的API是把$在許多數組元素的..的某些元素,如[傳媒$組]

任何問題任何時候我嘗試使用其中的$元素之一訪問數組,它不起作用。建議?

我試過preg_replace,但似乎無法讓我的表情正確。

+0

你能告訴我們一些你試圖訪問它的代碼嗎? – ryeguy 2010-05-25 19:25:41

+0

你在引用關鍵字嗎? $ array ['media $ group'] – nuqqsa 2010-05-25 19:29:03

回答

4

你應該能夠訪問它就好了,你只需要確保使用單引號,否則PHP將嘗試進行插值$group作爲變量,所以:
$youtubeArray['media$group']

如果你想在preg_replace中使用它,你必須用一個反斜槓來跳過它:\$$是一個有效的正則表達式標識符,所以正則表達式正在被絆住。

如果你確實替換它,你應該使用str_replace。沒有必要將(慢)正則表達式帶入此處。

+0

+1很好說! – 2010-05-25 19:30:30

+0

Ahh單引號做了詭計。感謝你們! – Chase 2010-05-25 20:46:05

+0

+1你永遠不會有足夠的單引號。在PHP中沒有任何理由使用雙引號 - 帶連接的單引號分析速度更快,對於大多數習慣於僅提供並置連接的語言的開發人員來說,它們更容易閱讀。一個例外是,如果您需要解析像\ n這樣的轉義字符,其中使用雙引號比在您的代碼中實際插入換行符更好。 – Daniel 2010-05-26 05:09:38

相關問題