html input value 属性遇到引号不显示的解决方法

<?php    $value="博尔特百米成绩是9'01/" 不可能吧?!";    ?>    <input type="text" value="<?php echo $value; ?>" />

如果 $value 的值中包括双引号,那么 input 在页面上只会把 $value 显示到双引号之前,双引号之后的内容不会显示,源代码里面则可以看到。

解决方法,把 $value 的引号用转义字符表示,使用str_replace函数,其中双引号的转义字符是:&#34;,单引号的转义字符是:&#39;。

<input type=text value="<?php echo str_replace('"', '&#34;', str_replace("'", '&#39;', $value)); ?>" />

腾讯云限时秒杀【点击购买】

搬瓦工,CN2高速线路,1GB带宽,电信联通优化KVM,延迟低,速度快,建站稳定,搬瓦工BandwagonHost VPS优惠码BWH26FXH3HIQ,支持<支付宝> 【点击购买】!

Vultr$3.5日本节点,512M内存/500G流量/1G带宽,电信联通优化,延迟低,速度快【点击购买】!

阿里云香港、新加坡VPS/1核/1G/25G SSD/1T流量/30M带宽/年付¥288【点击购买】