How to trim text using PHP

谁都会走 提交于 2019-11-29 14:30:22

I suggest using implode() to stick together SQL expressions like that. First build an array of simple expressions, then implode them with OR:

$pids = array('pid = "5"', 'pid = "3"');

$sql_where = implode(' OR ', $pids);

Now $sql_where is the string 'pid = "5" OR pid = "3"'. You don't have to worry about leftover ORs, even when there is only one element in $pids.

Also, an entirely different solution is to append " false" to your SQL string so it will end in "... OR false" which will make it a valid expression.

@RussellDias' answer is the real answer to your question, these are just some alternatives to think about.

You can try rtrim:

rtrim — Strip whitespace (or other characters) from the end of a string

$string = "pid='5' OR pid='3' OR";
echo rtrim($string, "OR"); //outputs pid='5' OR pid='3'

Using substr to find and remove the ending OR:

$string = "pid='5' OR pid='3' OR";
if(substr($string, -3) == ' OR') {
  $string = substr($string, 0, -3);
}
echo $string;

A regular expression would also work:

$str = 'pid="5" OR pid="3" OR';
print preg_replace('/\sOR$/', '', $str);

What do you think about this?

$str='pid="5" OR pid="3" OR';    
$new_str=substr($str,0, strlen($str)-3);
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!