我有一个数据库和下面的字符串:
Test§Test1§Test2§Test3§Test4
现在,我已经编写了这段代码,用新的代码替换其中的一个字符串:
<?php
$OldName = mysqli_real_escape_string($mysqli, $_GET['param2']);
$NewName = mysqli_real_escape_string($mysqli, $_GET['param3']);
try {
$mysqli->query("UPDATE " . $Usr . " SET Categories = REPLACE(Categories, '§" . $OldName . "', '§" . $NewName . "')");
} catch (Exception $e) {
}
try {
$mysqli->query("UPDATE " . $Usr . " SET Categories = REPLACE(Categories, '" . $OldName . "', '§" . $NewName . "')");
} catch (Exception $e) {
}
try {
$mysqli->query("UPDATE " . $Usr . " SET Categories = REPLACE(Categories, '§" . $OldName . "', '" . $NewName . "')");
} catch (Exception $e) {
}
try {
$mysqli->query("UPDATE " . $Usr . " SET Categories = REPLACE(Categories, '" . $OldName . "', '" . $NewName . "')");
} catch (Exception $e) {
}
?>
当我尝试仅替换“列表”中名为“测试”的第一项时,此方法但是有效,然后 它替换了该字符串中的每个Test,不仅是第一个Test,而且我尝试将其过滤掉。
在我的情况下,如何仅用分隔符§替换要替换的字符串?
希望您能理解我的问题。