$return 返回值为
9||50
||1|#|2013-09-09 00:00:22||13814002394||内容
||1|#|2013-09-09 00:00:19||13814002394||内容
||1|#|2013-09-07 00:51:57||15920531400||内容
||1|#|2013-09-06 22:21:02||15920531400||内容
||1|#|2013-09-06 22:13:14||15920531400||内容
||1|#|2013-09-06 22:07:42||15920531400||内容
||1|#|2013-09-05 14:00:02||15920531400||内容
||1|#|2013-09-05 12:10:13||15920531400||内容
||1|#|2013-09-05 12:01:27||15920531400||内容
||1|#|//这是整理过的是有规则的字符串(不是数组)
我变成可循环的数组 其中时间,号码,内容是变量!!!!!PHP字符串return
9||50
||1|#|2013-09-09 00:00:22||13814002394||内容
||1|#|2013-09-09 00:00:19||13814002394||内容
||1|#|2013-09-07 00:51:57||15920531400||内容
||1|#|2013-09-06 22:21:02||15920531400||内容
||1|#|2013-09-06 22:13:14||15920531400||内容
||1|#|2013-09-06 22:07:42||15920531400||内容
||1|#|2013-09-05 14:00:02||15920531400||内容
||1|#|2013-09-05 12:10:13||15920531400||内容
||1|#|2013-09-05 12:01:27||15920531400||内容
||1|#|//这是整理过的是有规则的字符串(不是数组)
我变成可循环的数组 其中时间,号码,内容是变量!!!!!PHP字符串return
解决方案 »
- 特一个问题,朋友们来吧
- 求助,2012新版EMS验证码可以识别,但还是不能实现程序自动跟踪查询
- php程序问题failed to open stream
- 请教cakephp 中继承方法!
- (最新新浪面试题)写出一种排序算法(要写出代码),并说出优化它的方法。
- sphinx/coreseek 配置问题【急】出现错误:received zero-sized searchd response
- 如果对mysql操作都封装成存储过程,好不好
- php写的pop3收邮件类
- 10进制负数 转 16进制
- 这个php代码18行错误提示Loader.php中的意外'['
- linux下,无法调用mssql请教
- 韩顺平老师dedecms
<li>2013-09-09 00:00:22 13814002394 内容</li>
<li>2013-09-09 00:00:22 13814002394 内容</li>
这样的循环方式!
$str='9||50
||1|#|2013-09-09 00:00:22||13814002394||内容
||1|#|2013-09-09 00:00:19||13814002394||内容
||1|#|2013-09-07 00:51:57||15920531400||内容
||1|#|2013-09-06 22:21:02||15920531400||内容
||1|#|2013-09-06 22:13:14||15920531400||内容
||1|#|2013-09-06 22:07:42||15920531400||内容
||1|#|2013-09-05 14:00:02||15920531400||内容
||1|#|2013-09-05 12:10:13||15920531400||内容
||1|#|2013-09-05 12:01:27||15920531400||内容
||1|#|';
$new_str=str_replace('||','|',$str);
$arr=explode('|1|#|',$new_str);
$new_arr=array();
foreach ($arr as $value)
{
echo $value;
if (substr_count($value,'|')>1)
{
$new_arr[]=explode('|',$value);
}
}
echo "<pre>";
print_R($new_arr);
echo "</pre>";
?>
简单的写了下,凑合着能,不知道有没有什么更好的办法
(
[0] => Array
(
[0] => 2013-09-09 00:00:22
[1] => 13814002394
[2] => 内容 ) [1] => Array
(
[0] => 2013-09-09 00:00:19
[1] => 13814002394
[2] => 内容 ) [2] => Array
(
[0] => 2013-09-07 00:51:57
[1] => 15920531400
[2] => 内容 ) [3] => Array
(
[0] => 2013-09-06 22:21:02
[1] => 15920531400
[2] => 内容
)
)这是打印出来的效果
9||50
||1|#|2013-09-09 00:00:22||13814002394||内容
||1|#|2013-09-09 00:00:19||13814002394||内容
||1|#|2013-09-07 00:51:57||15920531400||内容
||1|#|2013-09-06 22:21:02||15920531400||内容
||1|#|2013-09-06 22:13:14||15920531400||内容
||1|#|2013-09-06 22:07:42||15920531400||内容
||1|#|2013-09-05 14:00:02||15920531400||内容
||1|#|2013-09-05 12:10:13||15920531400||内容
||1|#|2013-09-05 12:01:27||15920531400||内容
||1|#|
TXT;
preg_match_all('/\|([^|]+)\|\|([^|]+)\|\|(.*)/m', $s, $r);
print_r($r);Array
(
[1] => Array
(
[0] => 2013-09-09 00:00:22
[1] => 2013-09-09 00:00:19
[2] => 2013-09-07 00:51:57
[3] => 2013-09-06 22:21:02
[4] => 2013-09-06 22:13:14
[5] => 2013-09-06 22:07:42
[6] => 2013-09-05 14:00:02
[7] => 2013-09-05 12:10:13
[8] => 2013-09-05 12:01:27
) [2] => Array
(
[0] => 13814002394
[1] => 13814002394
[2] => 15920531400
[3] => 15920531400
[4] => 15920531400
[5] => 15920531400
[6] => 15920531400
[7] => 15920531400
[8] => 15920531400
) [3] => Array
(
[0] => 内容
[1] => 内容
[2] => 内容
[3] => 内容
[4] => 内容
[5] => 内容
[6] => 内容
[7] => 内容
[8] => 内容
)
)已经可以用了
如果想把对应的放在一起就$ar = array_map(function($a,$b,$c){return array($a,$b,$c);}, $r[1], $r[2], $r[3]);
print_r($ar);Array
(
[0] => Array
(
[0] => 2013-09-09 00:00:22
[1] => 13814002394
[2] => 内容
) [1] => Array
(
[0] => 2013-09-09 00:00:19
[1] => 13814002394
[2] => 内容
) [2] => Array
(
[0] => 2013-09-07 00:51:57
[1] => 15920531400
[2] => 内容
) [3] => Array
(
[0] => 2013-09-06 22:21:02
[1] => 15920531400
[2] => 内容
) [4] => Array
(
[0] => 2013-09-06 22:13:14
[1] => 15920531400
[2] => 内容
) [5] => Array
(
[0] => 2013-09-06 22:07:42
[1] => 15920531400
[2] => 内容
) [6] => Array
(
[0] => 2013-09-05 14:00:02
[1] => 15920531400
[2] => 内容
) [7] => Array
(
[0] => 2013-09-05 12:10:13
[1] => 15920531400
[2] => 内容
) [8] => Array
(
[0] => 2013-09-05 12:01:27
[1] => 15920531400
[2] => 内容
))还可以写作$r[0] = function(){return func_get_args();};
$ar = call_user_func_array('array_map', $r);
更一般些
preg_replace('/^\|\|1\|#\|([^\|]+)\|\|([^\|]+)\|\|(.+)$', '<li>$1 $2 $3</li>', $return);可能要再去掉首尾行