我.htaccess
文件
RewriteRule ^(.+)$ index.php?url=$1
有这样的重写规则之后,当我检查类型的$_GET['url']
,始终是一个字符串。
我有兴趣知道是否有可能在浏览器的地址栏中写入一些魔术符号(或类似的东西)并在$_GET['url']
中获得另一种类型(而不是字符串)?
或者$_GET
的类型总是string
?
我.htaccess
文件
RewriteRule ^(.+)$ index.php?url=$1
有这样的重写规则之后,当我检查类型的$_GET['url']
,始终是一个字符串。
我有兴趣知道是否有可能在浏览器的地址栏中写入一些魔术符号(或类似的东西)并在$_GET['url']
中获得另一种类型(而不是字符串)?
或者$_GET
的类型总是string
?
如果你这样做:
index.php?url=asd&url[]=asd //asd&url[]=asd being the dynamic part
然后$_GET['url']
将是一个数组。
创建,非常感谢 – RIKI
无论你从$_GET
取什么都是字符串。
$_GET
参数将始终为字符串。
但是你可以检查你的变量是一个数字,然后使用强制:
if (is_numeric($_GET['url'])) {
$url = (int) $_GET['url'];
}
它总是一个字符串,为什么你还想要其他东西? – emartel
我很确定PHP动态地知道它是否应该是一个字符串。 你不能声明它的类型。 – Query
在PHP中,这应该写2:'1 +“1”'。 PHP是松散的类型。 –