سؤال

وأنا أبحث عن وسيلة للحصول على فليكس / البيسون (أو ليكس / ياك، وآخرون) الدعم في PHP. على وجه التحديد، وأنا تنفيذ محلل استعلام منطقية في واجهة الويب ويفضلون إبقاء جميع العمليات داخل PHP (بدلا من استدعاء محلل C، أو تمرير أمور قبالة لبيثون، الخ.).

هل كانت مفيدة؟

المحلول

الجير محلل مولد PHP:

<اقتباس فقرة>   

وLALR كاملة (1) مولد محلل و   المحرك (مثل BISON أو YACC) ولكنها ل   كل ذلك في PHP، وقواعد اللغة مساهمة   هو أسهل وأكثر للصيانة. كتابة   أفعالك في PHP. توليد PHP   كود الانتاج. محرك محلل مع   PHP. أريد أن جعل اللغة؟


تحديث:

وبما أنني كتبت ما سبق، أرى أن هناك بعض الأدوات الأخرى لتوليد محلل، أعلن هنا:

http://wezfurlong.org/ بلوق / 2006 / نوفمبر / محلل و-lexer مولدات مقابل فب /

ولست متأكدا إذا كانت هذه هي أي الحفاظ على نحو أفضل الآن في عام 2014، ولكن أعرف Wez فيرلونج، كان المطور الأصلي من شركة تنمية نفط عمان، وهو مطور جيدة جدا.

نصائح أخرى

مكتبة الكمثرى لها الطبقات LexerGenerator و <لأ href = "HTTP: // pear.php.net/package/PHP_ParserGenerator "يختلط =" نوفولو noreferrer "> ParserGenerator . بناء الجملة LexerGenerator متوافق مع re2c أو جملة ParserGenerator متوافق مع في الليمون محلل مولد .

هل حاولت النظر إلى مولدات محلل PEG في PHP: https://github.com/maetl/php -peg ؟

وأو نهج combinator محلل: http://qntm.org/locoparser

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top