<?php
$str = '1000 - 2000';
$str = preg_replace('/\s+/', '', $str);
// zero limit
print_r(explode('-',$str,0));
?>
我试图获得两个数组项'1000'和'2000'无济于事。我在这做错了什么?
答案 0 :(得分:1)
删除第三个参数以进行爆炸。将第三个参数设置为0,实质上会返回一个包含整个字符串的元素数组...
PARAMETERS · $delimiter - The boundary string. · $string - The input string. · $limit - If $limit is set and positive, the returned array will contain a maximum of $limit elements with the last element containing the rest of $string. If the $limit parameter is negative, all components except the last -$limit are returned. If the $limit parameter is zero, then this is treated as 1.
答案 1 :(得分:0)
这样做
$arr = preg_split('/\s*-\s*/', $str);
这是将给定的字符串分开(零个或多个空格(\ s *)+一个连字符+零个或多个空格(\ s *))。
答案 2 :(得分:0)
那是什么(对于所有空间):
<?php
$str = '1000 - 2000';
$tmp = explode('-', preg_replace('/\s+/', '', $str));
var_dump($tmp);
?>