Skip to main content

Python Get PHP-AST

PHP-AST PHP version social

Install

pip install  php-ast

exapme

# get bytes php code ast
from php_ast import php_ast
php_ast=php_ast()
php_ast.get_ast(b"<?php phpinfo();?>")
{'status': 'successed', 'ast': {'kind': 'AST_STMT_LIST', 'flags': 0, 'lineno': 1, 'children': [{'kind': 'AST_CALL', 'flags': 0, 'lineno': 1, 'children': {'expr': {'kind': 'AST_NAME', 'flags': 1, 'lineno': 1, 'children': {'name': 'phpinfo'}}, 'args': {'kind': 'AST_ARG_LIST', 'flags': 0, 'lineno': 1, 'children': []}}}]}}



# get php file ast
from php_ast import php_ast
php_ast=php_ast()
php_ast.get_file_ast("/home/11.php")
{'status': 'successed', 'ast': {'kind': 'AST_STMT_LIST', 'flags': 0, 'lineno': 1, 'children': [{'kind': 'AST_CALL', 'flags': 0, 'lineno': 1, 'children': {'expr': {'kind': 'AST_NAME', 'flags': 1, 'lineno': 1, 'children': {'name': 'phpinfo'}}, 'args': {'kind': 'AST_ARG_LIST', 'flags': 0, 'lineno': 1, 'children': []}}}]}}

说明

  • 本项目是基于php-ast扩展的python模块,用于获取php代码的ast树
  • 暂时只支持Linux 系统

参考:

Release files for php-ast 1.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for php-ast 1.5
File Size Uploaded
php_ast-1.5.tar.gz 4.0 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for php-ast 1.5
File Interpreter ABI Platform
php_ast-1.5-py3-none-any.whl Python 3 none any Details

Total release size: 8.1 MB

Release files / php_ast-1.5.tar.gz

Download URL php_ast-1.5.tar.gz
Size 4.0 MB
Tags Source
SHA-256 checksum
How to use checksums
47112778ae23754c0c6696901040c77da3790d355ddb2b11e7ab94b08f70b3cf
BLAKE2b-256 checksum
How to use checksums
89b6243f17a73d19b944a2497b2275f236b2f969e56c88542a310e8c04a3b03c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.9

Release files / php_ast-1.5-py3-none-any.whl

Download URL php_ast-1.5-py3-none-any.whl
Size 4.0 MB
Tags Python 3
SHA-256 checksum
How to use checksums
e7c032f96b90152b9bb3c9da5908d0e273082702aad1c310d499a83e0353a387
BLAKE2b-256 checksum
How to use checksums
bcdedf6082610bfd7bb2e84f2eaadcfb6fa62e978a62595c1c43e5d0bbe25f88
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.7.9

Release history Release notifications | RSS feed

This release

1.5 This release

2 release files

1.4

2 release files

1.3

2 release files

1.2

2 release files

1.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page