当前位置: 技术问答>linux和unix
php提供解析php脚本的api吗?哪里有这样的开发包?==〉〉分数不够可以另开贴子;up有分!
来源: 互联网 发布时间:2015-06-20
本文导语: 类似phped,Editplus 这样的软件,他们有对php代码的识别功能。 比如输入“fopen(”它就会提示函数的参数列表,甚至对于自定义函数和类,有些软件都能识别,并给出"自动完成提示",还有对于一些页面内部定义的变量,当写...
类似phped,Editplus 这样的软件,他们有对php代码的识别功能。
比如输入“fopen(”它就会提示函数的参数列表,甚至对于自定义函数和类,有些软件都能识别,并给出"自动完成提示",还有对于一些页面内部定义的变量,当写出来开头的时候,总有"自动完成提示"列出来待选列表。。。
等等这一系列的功能,是他们自己在作php脚本的解析么?或者是php解析器本身提供这样的api?
我看了 php.exe -h 的输出。可以进行代码解析,但是只能输出结果或者检查错误,最多有个php源代码=〉html的功能。可是这对于完成php脚本的解析是远远不够的,所以我希望知道是不是php的其他dll提供解析php脚本的api供其它程序(比如c++的或者delphi)调用,来完成解析功能?
如果php本身没有这样的开发包,我不知道是否能找到这样的开发包。
如果分数不够还可以另开贴子赠送,up有分!
希望得到详尽一点的答复,谢谢!
|
>类似phped,Editplus 这样的软件,他们有对php代码的识别功能。
各个软件都有自己的keyword列表, 只不过他们把php的函数名等也加入到其中,
然后实现各种功能, 如变色, 自动完成等.
-----
>我看了 php.exe -h 的输出。可以进行代码解析,但是只能输出结果或者检查错误,最多有个php源代码=〉html的功能。可是这对于完成php脚本的解析是远远不够的,所以我希望知道是不是php的其他dll提供解析php脚本的api供其它程序(比如c++的或者delphi)调用,来完成解析功能?
用php执行程序(在win下边是php.exe)已经可以完成脚本解释..它就是php的脚本解释器.
很多所谓php的IDE调试环境就是用它来实现php解释的...只不过把过程做得自动一点而已.
它提供的出错等信息已经足够了...当然要看你的php.ini的配置.
-----
>如果php本身没有这样的开发包,我不知道是否能找到这样的开发包。
没有...一般来说到达这种地步已经很好了. 如果用得好..现在的条件已经基本可以建成一个和其它语言类似的IDE环境了..只不过还没有一个统一的官方IDE..需要使用者自己建立. so.一般不会有什么开发包的东西出现, 但出现一些更好的集成IDE倒是有可能.
各个软件都有自己的keyword列表, 只不过他们把php的函数名等也加入到其中,
然后实现各种功能, 如变色, 自动完成等.
-----
>我看了 php.exe -h 的输出。可以进行代码解析,但是只能输出结果或者检查错误,最多有个php源代码=〉html的功能。可是这对于完成php脚本的解析是远远不够的,所以我希望知道是不是php的其他dll提供解析php脚本的api供其它程序(比如c++的或者delphi)调用,来完成解析功能?
用php执行程序(在win下边是php.exe)已经可以完成脚本解释..它就是php的脚本解释器.
很多所谓php的IDE调试环境就是用它来实现php解释的...只不过把过程做得自动一点而已.
它提供的出错等信息已经足够了...当然要看你的php.ini的配置.
-----
>如果php本身没有这样的开发包,我不知道是否能找到这样的开发包。
没有...一般来说到达这种地步已经很好了. 如果用得好..现在的条件已经基本可以建成一个和其它语言类似的IDE环境了..只不过还没有一个统一的官方IDE..需要使用者自己建立. so.一般不会有什么开发包的东西出现, 但出现一些更好的集成IDE倒是有可能.
|
帮UP
|
能的
但不没做过了
顶
但不没做过了
顶
|
phpedit,好像是这个软件,能够做到你说的那样。
因为php是一种脚本,可视化的开发工具主要是用来编译程序的,而php是不需要编译的,所以单纯的一种编写方面的工具是没有必要做的,最多仅仅是个editplus、ultraedit那样的文本工具而已。
因为php是一种脚本,可视化的开发工具主要是用来编译程序的,而php是不需要编译的,所以单纯的一种编写方面的工具是没有必要做的,最多仅仅是个editplus、ultraedit那样的文本工具而已。
|
昏!咋上这儿问来了? 是不是找错地方了?
|
up
|
只能UP了!
|
听说5.0有api
phpEd有自动完成的功能
phpEd有自动完成的功能
|
HOHO
|
我看楼主想要的不仅仅是一个好的编辑环境吧,更主要的是想做一个这样的编辑器吧?那是不是看看PHP的源码呢?如果C厉害的话可以到LINUX中看看他的源代码中,取出其中的精华来给大家分享一下??最好是能把自已做这个编辑器一步步给大家介绍介绍??这样的话我愿意把系统每天送给我的分都给你,算是一个鼓励吧:)
|
up算了
|
也来UP
|
zend studio
|
只能跟着up
|
yes..我没有用过zend studio,因为我并没有找到一个可以在linux上用的版本.
but..我看过一些对它介绍的文章...它提供了一个很好的IDE环境..当然使用地起来会很方便...*但这个跟php的开发包和解释器的关系不大*...在现在的情况下即使没有zend studio, 我觉得也可以很好的工作了...
正如vc是把IDE和编译器等很多东西加以整合...但是在linux text mode不用这种环境, 用vim+gdb+gcc也一样可以工作得很好
---
btw..你能不能说一下你问这些的目的? 要这些所说的开发包来做什么? 说不定可能你需要的东西并不是这个.
but..我看过一些对它介绍的文章...它提供了一个很好的IDE环境..当然使用地起来会很方便...*但这个跟php的开发包和解释器的关系不大*...在现在的情况下即使没有zend studio, 我觉得也可以很好的工作了...
正如vc是把IDE和编译器等很多东西加以整合...但是在linux text mode不用这种环境, 用vim+gdb+gcc也一样可以工作得很好
---
btw..你能不能说一下你问这些的目的? 要这些所说的开发包来做什么? 说不定可能你需要的东西并不是这个.
|
>我在php帮助上看到,php的教本解释引擎是zend engine,而zend也出zend studio,值得注意的是,zend studui和别的gramer-highlighting tool不一样,不但能够有php内建函数的highlight和auto completion,还能够对自定义类以及自定义函数实现auto completion!
>这肯定是因为载你编辑php script的时候同时解析,不然怎么能够完成这样的功能呢?
zend 由于同时编写zend engine和zend studio自然会比其它工具有优势, 正如vc在win下的表现.
但可以区别用户定义的function & class并不一定需要php本身的支持...只需要工具本身带有简单的词法分析部件就应该可以完成, 当然zend studio可能比其它工具更容易做得好...:P...
(一个简单的例子: 如果发现有类似 function func_name() {} 的代码, 就记下来用户有了一个名叫func_name的函数..这并不需要一个完整的php解析器去完成)
---
>我想问,是不是php官方提供了php语言的解析api,供其他程序调用,以实现类似zend studio这样软件的如上功能?
据我所知..没有
>这肯定是因为载你编辑php script的时候同时解析,不然怎么能够完成这样的功能呢?
zend 由于同时编写zend engine和zend studio自然会比其它工具有优势, 正如vc在win下的表现.
但可以区别用户定义的function & class并不一定需要php本身的支持...只需要工具本身带有简单的词法分析部件就应该可以完成, 当然zend studio可能比其它工具更容易做得好...:P...
(一个简单的例子: 如果发现有类似 function func_name() {} 的代码, 就记下来用户有了一个名叫func_name的函数..这并不需要一个完整的php解析器去完成)
---
>我想问,是不是php官方提供了php语言的解析api,供其他程序调用,以实现类似zend studio这样软件的如上功能?
据我所知..没有
|
帮UP
|
不懂
为什么别人开发的很好的东西,要去模仿哪?
为什么不能创新一点,这样才能有市场阿。
为什么别人开发的很好的东西,要去模仿哪?
为什么不能创新一点,这样才能有市场阿。
|
你去做一个吧。做出来成本怎么回收。
你有钱。自然能做出来。现在我还得为工资
干呀干呀。那来的时间想这些。
你有钱。自然能做出来。现在我还得为工资
干呀干呀。那来的时间想这些。
|
up
|
呵呵~~开始的时候我理解错了
以为楼主问的是PHP是否有(支持)api
对于楼主的问题,phped,Editplus是否自身有api调用完成某些功能(如自动完成)
这个不知道,但是它们调试PHP源码的时候还是通过PHP来解释的
至少phpEd 1.75还是这样的,所以它们本身应该没有集成PHP解释器
以为楼主问的是PHP是否有(支持)api
对于楼主的问题,phped,Editplus是否自身有api调用完成某些功能(如自动完成)
这个不知道,但是它们调试PHP源码的时候还是通过PHP来解释的
至少phpEd 1.75还是这样的,所以它们本身应该没有集成PHP解释器