分割字符串可以用explode函数
$str = "1,2,3,4,5,6";$arr = explode(",",$str);
foreach($arr as $a){
#插入数据库就可以
}使用explode函数 将字符串拆分为数组啊
$my_arr = explode('|',$arr);list($name, $state, $level) = $my_arr; //将数组的值赋值给变量
接下来怎么插入数据库就看你自己了修改了?那好吧,我更新。
假设你的这个字符串名为$str
$str = 'john:123mike:33lily:51';
$array1 = $array2 = array();
foreach(explode(':', $str) as $v){
if(intval($v) != 0) $array2[] = intval($v);
else $array1[] = $v;
}
那么$array1就是名字数组,$array2是数字数组。你这样修改了问题以后就方便多了。不用正则表达式了。这个函数是substr例子:echo substr('abcdef123', 1, 3); // 输出bcd
如果你是将字符串分割成单个字符的话,就用split('abcde'),这个返回一个数组
如果你的字符串有固定的分割符,你可以用explode('|','a|b|cd|e')这个返回也是一个数组
很简单,代码如下:
<php$str = "Hello Friend";
$arr1 = str_split($str);
$arr2 = str_split($str, 3);
print_r($arr1);
print_r($arr2);
/ Output may look like:
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)
Array
(
[0] => Hel
[1] => lo
[2] => Fri
[3] => end
)
/
>正则版本
<php
$p='我想对level 的值进行切割然后弄成 数组
值为 [1],1,2,3,4,[5],6,7,8,9,[10],11,12 要切割为 如果';
preg_match_all( '/\[(<a>\d+)\]|(<b>\d+)/m', $p, $m );
$a=array_values(array_filter($m['a'],'strlen'));
$b=array_values(array_filter($m['b'],'strlen'));
print_r($a);
echo '<hr>';
print_r($b);
===========
输出
Array
(
[0] => 1
[1] => 5
[2] => 10
)
----------------------------------------------
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 6
[5] => 7
[6] => 8
[7] => 9
[8] => 11
[9] => 12
)str_split()方法 以下是手册的说明
$str = "Hello Friend";
$arr1 = str_split($str);
Array
(
[0] => H
[1] => e
[2] => l
[3] => l
[4] => o
[5] =>
[6] => F
[7] => r
[8] => i
[9] => e
[10] => n
[11] => d
)
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)