2

我正在用 PHP 做这个。我有一个这样的字符串:“AND day_1 >= day_2 AND day_1 < day_3”,我想用 < 替换第一个 >= ,我想用 >= 替换第二个 <

换句话说,我想反转日期范围逻辑:

“AND day_1 >= day_2 AND day_1 < day_3”

我想反转看起来像这样:

“AND day_1 < day_2 AND day_1 >= day_3”

这是我的代码:

$str = "AND day_1 >= day_2 AND day_1 < day_3";
echo "{$str}<br>";
$old_replace = array(">=", "<=", "<", ">");
$new_replace = array("<", ">", ">=", "<=");
$count = 1;
$str = str_replace($old_replace, $new_replace, $str, $count);
echo $str;

当我尝试使用字符串替换时,它会这样做:

替换前:AND day_1 >= day_2 AND day_1 < day_3 替换后:AND day_1 <== day_2 AND day_1 <== day_3

4

1 回答 1

2

尝试这个:

$replacements = Array("<="=>">",">="=>"<","<"=>">=",">"=>"<=");
$str = strtr($str,$replacements);
于 2013-02-13T17:25:06.293 回答