用分隔符拆分字符串

explodestrstr 是通过分隔符获取子字符串的更简单方法。

包含由公共字符分隔的几个文本部分的字符串可以使用 explode 函数拆分为多个部分。

$fruits = "apple,pear,grapefruit,cherry";
print_r(explode(",",$fruits)); // ['apple', 'pear', 'grapefruit', 'cherry']

该方法还支持限制参数,可以按如下方式使用:

$fruits= 'apple,pear,grapefruit,cherry';

如果 limit 参数为零,则将其视为 1。

print_r(explode(',',$fruits,0)); // ['apple,pear,grapefruit,cherry']

如果设置了 limit 并且为正数,则返回的数组将包含最多限制元素,最后一个元素包含其余字符串。

print_r(explode(',',$fruits,2)); // ['apple', 'pear,grapefruit,cherry']

如果 limit 参数为负,则返回除最后一个 -limit 之外的所有组件。

print_r(explode(',',$fruits,-1)); // ['apple', 'pear', 'grapefruit']

explode 可以与 list 结合使用,将字符串解析为一行中的变量:

$email = "user@example.com";
list($name, $domain) = explode("@", $email);

但是,请确保 explode 的结果包含足够的元素,否则将触发未定义的索引警告。

strstr 在第一次出现给定针之前剥离或仅返回子字符串。

$string = "1:23:456";
echo json_encode(explode(":", $string)); // ["1","23","456"]
var_dump(strstr($string, ":")); // string(7) ":23:456"

var_dump(strstr($string, ":", true)); // string(1) "1"