0
$length = strlen($string);
if($length > 5 && $length < $10)
为了避免重复长度测量:
if(strlen($string) > 5 && strlen($string) < 10)
是否有这样做的更好的方式?喜欢的东西:
if(5 < strlen($string) < 10)
$length = strlen($string);
if($length > 5 && $length < $10)
为了避免重复长度测量:
if(strlen($string) > 5 && strlen($string) < 10)
是否有这样做的更好的方式?喜欢的东西:
if(5 < strlen($string) < 10)
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 +范围更快。
不幸的是,在PHP中没有保证的表达式评估顺序:see PHP language developer discussion here。因此,避免临时变量在exapmle将危险并取决于PHP版本,平台等。
为避免在表达式中进行双重评估,可以构建一个字符串类并在评估完成后缓存其长度供以后访问。