Home  >  Article  >  Backend Development  >  请教php分割字符串

请教php分割字符串

WBOY
WBOYOriginal
2016-06-23 13:31:11974browse

各位前辈好,

小弟遇到一个困难,

字符串:

[2015/07/07 00:00:00] test001 405433AH 127.0.0.1 Start
小弟想分割这字符串到array里
理想结果:
Array ( [0] =>[2015/07/07 00:00:00]   [1] =>test001 [2]=>405433AH [3]=>127.0.0.1 [4]=>Start )

请问小弟该如何分割这字符串呢?
小弟试过用explode 但是分割不了。

请前辈赐教。
谢谢。


回复讨论(解决方案)

$s = '[2015/07/07 00:00:00]	test001	405433AH	127.0.0.1	Start';$a = sscanf($s, "[%s %8s]\t%s\t%s\t%s\t%s");print_r($a);
Array(    [0] => 2015/07/07    [1] => 00:00:00    [2] => test001    [3] => 405433AH    [4] => 127.0.0.1    [5] => Start)
不完全吻合,但也合情合理

非常感谢前辈,
请让小弟问下

%s 代表字符串
那么 %8s 是什么呢?

% 8s 表示取到 8 个字符就结束

使用explode都可以,但麻烦一点。

$str = '[2015/07/07 00:00:00]   test001 405433AH    127.0.0.1   Start';$arr = explode(' ', preg_replace('/[ ]{2,}/', ' ', $str));$arr[1] = $arr[0].' '.$arr[1];unset($arr[0]);$arr = array_values($arr);print_r($arr);



Array
(
    [0] => [2015/07/07 00:00:00]
    [1] => test001
    [2] => 405433AH
    [3] => 127.0.0.1
    [4] => Start
)

谢谢两位前辈,

问题解决了。

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn