这是我的网址
http://localhost:8888/App.php#?ID=1S
我需要1S
作为变量来将它与查询一起使用。
答案 0 :(得分:1)
如果您要将网址解析为字符串:
$str = 'http://localhost:8888/App.php#?ID=1S';
$temp = explode( "?", $str );
$result = explode( "=", $temp['1'] );
echo $result['1'];
如果您想在服务器端获取它:
哈希值不会发送到服务器端。因此无法在服务器端获取它,但您可以使用javascript来做一些技巧。
使用JavaScript / jQuery: (不添加标签)
<script>
var vars = [], hash;
var hashes = window.location.href.slice(window.location.href.indexOf('#') + 1).split('&');
hash = hashes[0].split('=');
alert( hash['1'] );
// you can use jQuery.ajax() here to send this value to server side.
</script>
答案 1 :(得分:0)
echo parse_url('http://localhost:8888/App.php#?ID=1S', PHP_URL_FRAGMENT);
OR
echo parse_url($_SERVER['QUERY_STRING'], PHP_URL_FRAGMENT);
如果您需要进一步解析它:
$x = parse_url($_SERVER['QUERY_STRING'], PHP_URL_FRAGMENT);
parse_str($x, $arr);
echo $arr['ID']
答案 2 :(得分:0)
$url = "http://localhost:8888/App.php#?ID=1S&another=3";
$a = parse_url($url);
parse_str($a["fragment"],$arr);
print_r($arr);
输出:
Array (
[?ID] => 1S
[another] => 3
);
如果您可以使用“?ID”
直接访问第一个参数答案 3 :(得分:0)
我想这样做的唯一方法是通过AJAX请求,这是一个简化的例子:
索引页
<!doctype html>
<html>
<head>
<title>Website</title>
<script type="text/javascript">
var url = document.location;
url = url.toString();
var getVal = url.split("#");
var xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET', 'App.php'+getVal[1], true);
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4 && xmlhttp.status == 200) {
alert(xmlhttp.responseText);
}
}
xmlhttp.send();
</script>
</head>
<body>
</body>
</html>
App.php页面
<?php
if (isset($_GET['url'])) echo 'url : ' . $_GET['url'];
?>