码迷,mamicode.com
首页 > Web开发 > 详细

使用PHP处理文本小技巧

时间:2015-09-07 00:16:16      阅读:206      评论:0      收藏:0      [点我收藏+]

标签:

PHP的Cli模式使用:http://www.php.net/manual/zh/features.commandline.php

 

PHP命令行部分参数:
-B     在处理 stdin 之前先执行 PHP 代码。
-R     对每个输入行都执行 PHP 代码。
        此模式下有两个特殊变量:$argn 和 $argi。$argn 包含 PHP 当前处理的行内容,而 $argi 则包含该行号。 
-E    在处理完输入后执行的 PHP 代码。

Demo:从nginx日志计算平均响应时间
1:nginx日志格式(最后一个字段是响应时间)

"157.55.39.153" - - [01/Jun/2014:23:58:07 +0800] "GET /s-b5a5c8fdcfe0b5bcb9eccabdb0b2d7b0d6c7c4dcb5e7b1ed.html HTTP/1.1" 200 17988 "-" "Mozilla/5.0 (compatible; bingbot/2.0; +http://www.bing.com/bingbot.htm)" "0.352"
2:命令

cat sousuo.log-20140531 | /usr/local/php/bin/php -B ‘$totaltime =0; $lines = 0;‘ -R ‘$temp = explode(" ", $argn); $time_c = substr($temp[count($temp) -1],1,-1); $totaltime += $time_c; $line++; echo $line."\r\n";‘  -E ‘ echo "\r\n avg time:". ($totaltime / $line);‘

使用PHP处理文本小技巧

标签:

原文地址:http://www.cnblogs.com/dormscript/p/4787613.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!