PHP-请教如何使用正则分析出给定PHP类中的成员变量

发布于 2016-11-22 16:15:32 字数 164 浏览 1311 评论 4

如下类,希望能够通过正则表达式分析出该类的所有成员变量(包括名称以及初始值),并组成数组返回,小生使用

preg_match_all('/var($.*)s*=s*([sS]*);s*n/i', $str), $match);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

想挽留 2017-10-30 02:16:33

个人觉得你这个完全没有必须用正则来取数据,一样不一定完全正确,二来,可以通过get_class_vars函数得到,也可能通过PHP的反射技术中的ReflectionClass得到类的所有成员属性和成员方法,你这个只要用ReflectionClass的getProperties方法就能得到你想要的结果

夜无邪 2017-07-13 08:05:35

var_dump(json_decode(json_encode(new GeSHi()),true)); //将对象通过json转换成数组
var_dump(get_class_vars(GeSHi)); //直接使用 get_class_vars();

var_dump(new GeSHi()); // 直接打印对象,是一个对象,但是也能看到 属性啊。

想挽留 2017-04-01 00:55:38

get_class_vars()

这个用于分析已经引用的类是可行的,
如果只是分析源码,
没必要把类引入进来。

清晨说ぺ晚安 2016-12-25 14:57:37

preg_match_all('/vars+$(w+)s*=s*(.*);s*n/Uis', $content, $match);

其实感觉用get_class_vars()函数就可以吧

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文