небольшая среда выполнения PHP (интерпретатор) для образовательных целей - PullRequest
0 голосов
/ 14 октября 2019

Есть ли небольшая среда выполнения PHP (интерпретатор) для изучения PHP? Я думаю, что создание собственной среды выполнения PHP - хороший способ понять, как работает PHP.

Кажется, что в языке C есть несколько игрушечных компиляторов для обучения, но я не смог найти его для PHP.

Iпредпочитают следующее условие:

  • написано на языке C
  • совместимая архитектура x86-64 (Linux)

небольшой c-компилятор для образовательных целей


Обновление 1

Я ищу игрушечные компиляторы PHP для изучения языка программирования, такие как TCC: Tiny C Compiler. https://en.wikipedia.org/wiki/Tiny_C_Compiler


Обновление 2

Этот сайт показывает, что PHP имеет следующие процессы выполнения.

1 Lexing
2 Parsing
3 Compilation
4 Interpretation

Я хочу понять все процессы. Мне нужно прочитать официальный переводчик , но мне это кажется трудным. Поэтому я хочу начать с меньшего.

Ответы [ 2 ]

2 голосов
/ 14 октября 2019

Опять же, это может быть не то, что вы ищете;

Но я всегда обнаруживал, что установка фиктивного сервера Apache с PHP - это самый простой способ выучить PHP (и попрактиковаться в построении в среде, в которой PHPнаиболее часто используемые)

Простая настройка IDE (Notepad ++) и XAMPP (или WAMP) будет иметь локальный сервер с простой возможностью использования PHP.

XAMPP: https://www.apachefriends.org/index.html WAMP: http://www.wampserver.com/en/

Блокнот ++: https://notepad -plus-plus.org / downloads /

Как я уже сказал;это может быть не то, что вы после ...

0 голосов
/ 15 октября 2019

Перестройте PHP5 / 7 с помощью:

  1. Максимальное количество отключенных расширений.
  2. При включенном флаге оптимизации (для размера).
  3. Убедитесь, что двоичный файл удален.

Это технически уменьшит размер интерпретатора и количество установленных расширений.

Вы должны быть в состоянии предоставитьэти параметры во время шага "./configure", смотрите "./configure --help" для получения дополнительной информации об этом.

...