我正在尝试将URL作为php中的url参数传递,但是当我尝试获取此参数时我什么也没收到
我正在使用以下网址形式:
http://localhost/dispatch.php?link=www.google.com
我试图通过它:
$_GET['link'];
但是什么也没回来。问题是什么?
$_GET
不是函数或语言构造,而只是一个变量(数组)。尝试:
<?php
echo $_GET['link'];
特别是,它是一个超全局变量:一个由PHP填充的内置变量,在所有作用域中都可用(您可以在没有global关键字的函数内部使用它)。
由于该变量可能不存在,因此您可以(并且应该)确保您的代码不会通过以下方式触发通知:
<?php
if (isset($_GET['link'])) {
echo $_GET['link'];
} else {
// Fallback behaviour goes here
}
另外,如果您想跳过手动索引检查并可能添加进一步的验证,则可以使用过滤器扩展:
<?php
echo filter_input(INPUT_GET, 'link', FILTER_SANITIZE_URL);
最后但并非最不重要的一点是,您可以使用null合并运算符(自PHP / 7.0起可用)来处理缺失的参数:
echo $_GET['link'] ?? 'Fallback value';
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句