2013-03-22 68 views
0

我现在的地址是:http://localhost/bookstore/bookedit.php?book_id=12

$_SERVER['PHP_SELF']变量是一个字符串'/bookstore/bookedit.php'

但我想获得字符串'bookedit.php?book_id=12'

我们是否有任何函数或变量可以做到这一点?

谢谢!

+1

注意[PHP_SELF易受XSS(http://stackoverflow.com/questions/6080022/php-self-and-xss),'$ _ SERVER [ 'SCRIPT_NAME'] '是一个更安全的选择。 – 2013-03-22 15:00:30

+0

以下链接包含您需要的所有信息... http://php.net/manual/en/reserved.variables.server.php – Populus 2013-03-22 14:58:29

回答

4

如果你做一个var_dump($_SERVER)你会看到所有的服务器变量,你必须提供给您

$_SERVER['PHP_SELF'] . '?' . $_SERVER['QUERY_STRING']; 
+0

谢谢!快速清晰! – nut 2013-03-22 14:57:44

+0

哇,感谢提及var_dump($ _ SERVER),第一次听说它,这对像我这样的初学者非常有用! – nut 2013-03-22 15:00:41

1

可以使用请求URI变量。

$_SERVER['REQUEST_URI']

+0

这也解决了我的问题,谢谢 – nut 2013-03-22 15:11:47

+0

这也会返回路径,即'/ bookstore'。 – 2013-03-24 05:48:56

0
$data = basename($_SERVER['PHP_SELF']); 
$data .= $_SERVER['QUERY_STRING'] ? '?' . $_SERVER['QUERY_STRING'] : ''; 
相关问题