doudi1978 2013-05-02 12:46
浏览 21

PHP - str_replace();

I'm entering news on my website through a form. While adding news or editing it, or get replaced with a br.

Now I still have an issue, when I write for example "I've" it will print out as I\'ve.

First question, is this caused due to mysql_real_escape_string(); ? Second question, how can I replace multiple matches with diffirent tags ?

Right now I have something like this:

$order = array("'", "\'");
$replace = "´";
$order = array("
", "
", "");
$replace = "<br />";
$string = $news;
$insert = str_replace($order, $replace, $string);

I'm almost sure this is not the correct way to do it because they are all assigned to the same variables,.. Could someone point me in the right direction please ?

Edit: Although this works, am I 'allowed' to code it like this ?

Edit: Thank you all for your answers, problem is fixed now ! :)

  • 写回答

5条回答 默认 最新

  • doukuang1897 2013-05-02 12:50
    关注

    You can use arrays as input for str_replace():

    $order = array("'", "\'","
    ", "
    ", "");
    $replace = array("&acute;","&acute;","<br />","<br />","<br />");
    $string = $news;
    $insert = str_replace($order, $replace, $string);
    

    And yes, the escaped \' are likely from your database code. Use stripslashes() to remove them.

    评论

报告相同问题?

悬赏问题

  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line