php 在插入到MYSQL之前,我如何删除撇号?(不是简单地转义它们)

5ktev3wc  于 2023-01-19  发布在  PHP
关注(0)|答案(5)|浏览(120)

我有一个程序,它可以获取有时带有撇号的网页标题。我不想简单地注解掉它们,并用\s来转义它们。我怎样才能把它们一起去掉呢?

o8x7eapl

o8x7eapl1#

str_replace()应该工作:

$string = str_replace("'", "", $string);
mqkwyuun

mqkwyuun2#

您可以使用此功能清除标题中不需要的字符。

function clean_up( $text ) {
    $unwanted = array("'"); // add any unwanted char to this array
    return str_ireplace($unwanted, '', $text);
    }

像这样使用它:

$dirty_title = "I don't need apostrophes.";
$clean_title = clean_up($dirty_title);
echo $clean_title; // outputs: I dont need apostrophes.
5fjcxozz

5fjcxozz3#

$string = str_replace("'", "'", $string);

这个方法是PHP和MySQL安全的,并且当字符串被回显时不会改变字符串的外观。在处理像O'Brian这样的名字时很有用。

rpppsulh

rpppsulh4#

如果你想插入一个包含撇号的字符串,在代码中添加下面一行来转义它们:
$data = str_replace("'", "\'", $data);

lnlaulya

lnlaulya5#

如果你试图在mysql更新前修剪,或插入到...

$string = str_replace("'", "", $string);

是好的,但mysql可以使用另一个符号,而不是修剪一个。
这里我开发的是修剪后呼应mysql值.阅读mysql:

$result = mysqli_query($conn, "SELECT value1 FROM db WHERE id='1'  ");
if (mysqli_num_rows($result) > 0) {while($row = mysqli_fetch_assoc($result)) {
echo str_replace('"', '', $row["value"]);
}
}

相关问题