在哪种情况下preg_split可能返回false

时间:2019-12-14 13:27:24

标签: php regex

preg_split的PHP文档规定以下内容:

  

返回一个数组,该数组包含主题的子字符串,这些主题的子字符串沿与模式匹配的边界分割,如果失败则为FALSE。

我必须为此编写一个单元测试,但是我无法生成任何返回false的模式。 在什么情况下可能会发生?

1 个答案:

答案 0 :(得分:2)

如果由于无效输入而无法执行preg_split,则preg_split将返回false。
例子-

$string = array("sdasds"); // Invalid string
$array=preg_split('/[\s,]+/',$string);
var_dump($array); //false

$string = "sdasds";
$array=preg_split('j',$string); // Invalid pattern
var_dump($array); //false

除了这两个参数外,它也适用于其他参数。

preg_split ( string $pattern , string $subject [, int $limit = -1 [, int $flags = 0 ]] ) : array