Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/463.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么不在PHP中使用str#u replace从字符串中删除散列(#)?_Javascript_Php - Fatal编程技术网

Javascript 为什么不在PHP中使用str#u replace从字符串中删除散列(#)?

Javascript 为什么不在PHP中使用str#u replace从字符串中删除散列(#)?,javascript,php,Javascript,Php,我试过下面的代码 <script type="text/javascript"> var hasvalue = window.location.hash; </script> <?php $ValHas = "<script>document.writeln(hasvalue);</script>"; echo $ValHas."<br>"; // Display #123-12555 echo str_replace("#",

我试过下面的代码

<script type="text/javascript">
var hasvalue = window.location.hash;
</script>
<?php
$ValHas = "<script>document.writeln(hasvalue);</script>";
echo $ValHas."<br>"; // Display #123-12555 
echo str_replace("#","",$ValHas); // Display again #123-12555 
?>

var hasvalue=window.location.hash;

我缺少什么?

$ValHas
在PHP中仍然是一个字符串,其值为
“document.writeln(hasvalue);”
。它没有
#
s。在客户端的Javascript对函数进行求值之前,它不会转换为
“#123-12555”

如果要删除哈希客户端,请执行以下操作:


var hasvalue=window.location.hash.replace('#','')

如果要删除#变量,请使用this
var hasvalue=window.location.hash.replace('#','')Working@B.Desai基本上它是使用$ValHas=“#123-12555”;我知道的很清楚,但是当我使用上面的代码时,它仍然在凝视中显示。是的,它工作正常,谢谢。在php中不删除哈希的主要原因是什么?使用str_replace。因为在PHP中,字符串中没有散列-PHP看到的字符串没有
#
。好的,非常感谢@CertainPerformance。它将在将来帮助我。