我想知道如果我在一个数组索引上使用特殊字符执行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