有没有更好的方法使用PHP定义if()条件?

Ibr*_*mar 4 php if-statement

有没有更好的方法重新定义这个if(),我不喜欢这个陈述是$prefix一次又一次地重复,它看起来很难看.

if($prefix == 'RSVH' || 
   $prefix == 'RSAP' || 
   $prefix == 'CMOS' || 
   $prefix == 'CMSR' || 
   $prefix == 'CMKS' || 
   $prefix == 'CMWH' || 
   $prefix == 'CMBL' || 
   $prefix == 'LNRS' || 
   $prefix == 'LNCM' || 
   $prefix == 'LNMX' || 
   $prefix == 'PMNG');
Run Code Online (Sandbox Code Playgroud)

谢谢..

Com*_*eek 7

您可以使用数组和函数in_array():

$values = array('RSVH', 'RSAP', 'CMOS' /*, ... */);

if ( in_array($prefix, $values) )
{
  /* do something */
}
Run Code Online (Sandbox Code Playgroud)


Mic*_*ski 6

可能我会用 in_array()

if (in_array($prefix, array('RSVH','RSAP','CMOS'.....))
{
   // It's in there...
}
Run Code Online (Sandbox Code Playgroud)