在PHP中,哪个更快:preg_split还是爆炸?
2022-08-30 19:03:54
当使用它来提取php中搜索查询中的关键字时,这更快:
$keyword = preg_split('/[\s]+/', $_GET['search']);
或
$keyword = explode(' ', $_GET['search']);
当使用它来提取php中搜索查询中的关键字时,这更快:
$keyword = preg_split('/[\s]+/', $_GET['search']);
或
$keyword = explode(' ', $_GET['search']);
在简单的用法中比更快,请参阅:micro-optimization.com/explode-vs-preg_split(链接来自 web.archive.org)explode()
但是preg_split
具有支持带 的制表符 () 和空格的优点。\t
\s
元字符用于查找空格字符。\s
空格字符可以是 (http://php.net/manual/en/regexp.reference.escape.php):
0x20
)0x09
)0x0D
)0x0A
)0x0C
)在这种情况下,您应该看到成本和收益。
提示,使用array_filter
“删除”数组中的空项目:
例:
$keyword = explode(' ', $_GET['search']); //or preg_split
print_r($keyword);
$keyword = array_filter($arr, 'empty');
print_r($keyword);
注意:正则表达式性能