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