2012-01-19 18 views
16

मुझे आश्चर्य है कि किसी ने कहीं PHP के लिए एक ईबीएनएफ संकलित किया है। मुझे this site और this site दोनों मिला। दोनों ऐसा लगता है कि वे अपूर्ण हैं, हालांकि। This question is very similar, लेकिन यह एक वर्ष पुराना है। मैं जानना चाहता हूं कि क्या कोई प्रगति हुई है या नहीं।ईबीएनएफ व्याकरण परिभाषाएं?

उत्तर

9

आप yacc grammar PHP uses internally पर एक नजर है कर सकते हैं। मुझे पता है, यह ईबीएनएफ नहीं है, लेकिन हो सकता है कि यह आपकी आवश्यकताओं के लिए ठीक है।

आप re2c lexer definition पर भी देखना चाह सकते हैं।

+0

प्रतिक्रिया के लिए धन्यवाद व्याकरण का लिंक टूटा हुआ लगता है, लेकिन मुझे लगता है कि फ़ाइल [गीथहब] पर भी है (https://github.com/php/php-src /blob/master/Zend/zend_language_parser.y)। –

+0

@FabianLauer धन्यवाद, लिंक अपडेट किया गया। एलएक्सआर फिर से मूडी हो रहा है ... – NikiC

8

site जहाँ से मैं निम्नलिखित लिंक कर लिया है इतालवी है, लेकिन हमने:

+0

हाय, क्या आपको लगता है कि ईबीएनएफ विनिर्देश पूरा हो गया है? – kisanme

+0

यह एक पुरानी पोस्ट है, मैं ईमानदारी से नहीं कह सकता। ऐसा मत सोचो – dierre

+0

हाँ वास्तव में बहुत पुराना है;) – kisanme

0

एक ANTLR3 व्याकरण उसे उपलब्ध है:

http://code.google.com/p/phpparser/ 

ऊपर व्याकरण ANTLR4, वर्तमान ANTLR रिलीज के साथ संगत नहीं है।

संबंधित मुद्दे