Heim >Backend-Entwicklung >PHP-Tutorial >求教用TP作类似淘宝那种多级筛选用if语句控制发现传一两个字段还好控制,传三个字段以上就不好控制了,筛选出来的数据就不对了。有什么好的方法吗

求教用TP作类似淘宝那种多级筛选用if语句控制发现传一两个字段还好控制,传三个字段以上就不好控制了,筛选出来的数据就不对了。有什么好的方法吗

WBOY
WBOYOriginal
2016-06-13 12:22:431003Durchsuche

求教用TP做类似淘宝那种多级筛选用if语句控制发现传一两个字段还好控制,传三个字段以上就不好控制了,筛选出来的数据就不对了。有什么好的方法吗?

<br />      //多级筛选<br />                     <br />                     $name=$_GET[pid];<br />                     $brand=$_GET[theme];<br />                     $carage=$_GET[price];<br />                     echo $carage;<br />  <br />                 <br />                     if($name="泵车" AND $brand="三一"){<br />                     $handmebuyinfo=M("handmebuyinfo");<br />                     $map['name']=$name;<br />                     $map['brand']=$brand;<br />                     //$map['carage']=$carage;<br />                     $row=$handmebuyinfo->where($map)->select();<br />                     dump($row);<br />                     }<br />                                        <br />                     if($name=='' OR $brand=='' OR $carage==''){<br />                     $handmebuyinfo=M("handmebuyinfo");<br />                     $map['name']=$name;<br />                     $map['brand']=$brand;<br />                     $map['carage']=$carage;<br />                     $map['_logic'] = 'OR';<br />                     $row=$handmebuyinfo->where($map)->select();<br />                     dump($row);<br />                     }<br />


------解决思路----------------------
$a = array(<br />  'a' => 1,<br />  'b' => '',<br />  'c' => 0,<br />);<br />print_r(array_diff($a, array('')));<br />print_r(array_diff($a, array('', 0)));
Array<br />(<br />    [a] => 1<br />    [c] => 0<br />)<br />Array<br />(<br />    [a] => 1<br />)<br /><br />
这样就不需要 if($name=='') 这样一个个判断了

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn