php 正则匹配函数体

yipeiwu_com6年前PHP代码库
复制代码 代码如下:

<?php
$data = php_strip_whitespace('test.php'); //去掉注释,空格,换行(不包括字符串中的)
echo $data;
$data = preg_match_all("
/
function\s+ #匹配function和后面的空格
[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]* #匹配函数名
\(([^)]*?)\)\s+ #匹配函数参数,并且作为子模式捕获
\{
(.*?)
\}(?=(?:\s*function|\s*?$)) #匹配大括号,仅当后面紧跟着function或者处于字符串结束位置时
/xi
", $data, $matches);

print_r($matches);
?>

相关文章

如何用php生成扭曲及旋转的验证码图片

复制代码 代码如下:<?php function make_rand($length="32"){//验证码文字生成函数      ...

php插入中文到sqlserver 2008里出现乱码的解决办法分享

今天使用php操作数据库时发现插入SQL Server 2008数据库里的中文字段出现乱码,下面是我一开始时的一些情况: 开发环境是php5.3.3+Apache2.2.17+SQL S...

php超快高效率统计大文件行数

用php获取文件行数,网上给出的答案通常是使用file这样一次性读取,这样不适用在大文件。通常大文件大家用while来循环的逐行统计,这样的效率太慢 最快的方法是多行统计,每次读取N个字...

php数据结构与算法(PHP描述) 查找与二分法查找

复制代码 代码如下: <?php /** * 查找 * **/ // 顺序查找 function normal_search($arrData,$val) { $len = cou...

在同一窗体中使用PHP来处理多个提交任务

为什么使用多个提交任务? 在我回答这个问题之前,先让我回答一个很显然的问题:既然许多窗体更适合单一的提交按钮,为什么有时人们需要的是两个(或者是更多)的提交按钮? 对这一问题最好的解释方...