2014-11-23 68 views

回答

0

PHP中没有之间操作。你可以这样做:

if (in_array($someVar, range($min, $max))) 

if (in_array(strlen($string), range(6, 9))) // In your case 5 and 10 are not included 

你正在做的方式是非常干净的,并可能有点比in_array +范围更快。

0

不幸的是,在PHP中没有保证的表达式评估顺序:see PHP language developer discussion here。因此,避免临时变量在exapmle将危险并取决于PHP版本,平台等。

为避免在表达式中进行双重评估,可以构建一个字符串类并在评估完成后缓存其长度供以后访问。