我想知道如果我在一個數組索引上使用特殊字符執行extract()
會發生什麼。函數提取和特殊字符
舉例來說,如果我做了,在YouTube上get_meta_tags,我有這條線$array['og:url'] = 'http://....'
陣列如果我做一個extract($array)
,會發生什麼? $og: url
?
我想知道如果我在一個數組索引上使用特殊字符執行extract()
會發生什麼。函數提取和特殊字符
舉例來說,如果我做了,在YouTube上get_meta_tags,我有這條線$array['og:url'] = 'http://....'
陣列如果我做一個extract($array)
,會發生什麼? $og: url
?
當您爲extract閱讀文檔,有一行這樣說:
檢查每一個關鍵看它是否有一個有效的變量名。
但我嘗試了你。這裏是我試過的代碼:
$array = array(
'foo-čťžý' => 'bar',
'og:url' => 'https://google.com/',
'test' => 'test'
);
extract($array);
echo '<pre>';
print_r(get_defined_vars());
echo '</pre>';
結果將是:
Array
(
[_GET] => Array
(
)
...
[array] => Array
(
[foo-čťžý] => bar
[og:url] => https://google.com/
[test] => test
)
[test] => test
)
所以,你可以清楚地看到,這些變量不會被提取。要試用此代碼,請訪問此網站PHPTESTER
告訴OP如何解決像'og:url'這樣的變量會很有用! – RiggsFolly
而你在這個例子中並沒有真正顯示提取的變量,因爲它們將存在於全局範圍內 – RiggsFolly
@RiggsFolly唯一的方法是'$ array ['og:url']'。你是這個意思? – debute
那麼您可以隨時嘗試一下,讓我們都知道結果。測試幾乎不是一件困難的事情 – RiggsFolly
要怎麼試? – YMomb
我不知道如何測試...... – Jacquie