【PHP】input的value值出现双引号无法显示的解决办法

    <?php
    $str = "I'm a \"!";
    ?>
    <input type="text" value="<?=$str?>" />

    结果浏览器的文本框里只显示了“I'm a ”,双引号不见了,查看源代码可以发现如下

    <input type="text" value="I'm a "!" />



    可见是html解析问题,input value值中的双引号被作为value值的结束符了。

    解决办法就是:把双引号替换为&#34;,单引号替换为&#39;。

    <?php
    $str = "I'm a \"!";
    $str = str_replace($str, "\"", "&#34;");
    $str = str_replace($str, "'", "&#39;");
    ?>
    <input type="text" value="<?=$str?>" />

    其他语言类似操作。



    本博客所有文章如无特别注明均为原创。
    复制或转载请以超链接形式注明转自枫芸志,原文地址《【PHP】input的value值出现双引号无法显示的解决办法
    标签:
    分享:

已经有2 条评论抢在你前面了~

  1. 沙发
    呱呱歌舞汇 2011年12月22日 下午9:46

    直接用ascii码

    [回复]

  2. 板凳
    光纤接入 2011年12月15日 上午11:13

    啊,又学习了一点。

    [回复]

无觅相关文章插件,快速提升流量