Является ли язык PHP результирующим C?
Хорошо: я редактировал свой вопрос: Я где-то слышал, что php-язык написан на C.
Итак, что происходит, например, когда вы запускаете функцию в php, например date("Ymd");
или file_get_contents("file.txt");
?
Переводит ли этот код на C и запрашивает сервер, или делает php?
И если он переводит его и запрашивает, значит, в основном это C?
Ответы
Ответ 1
Это неверно.
Если вы имеете в виду язык PHP, он реализован в C, а не С++; см. страницу wikipedia PHP в разделе Язык реализации.
Это, однако, не означает, что он "переводит" код на C; PHP - интерпретируемый язык.
При выполнении кода он, конечно, должен использовать функции, написанные на C, так как сам он использует C. Однако никакого "перевода" на C не происходит; код просто анализируется языком PHP, а затем он сам вызывает то, что подходит.
Возможно, вы захотите прочитать больше на интерпретируемых языках, что должно дать вам лучшее понимание.
Ответ 2
В любом интерпретируемом языке синтаксис языка является просто оболочкой для функций и конструкций, реализованных на языке, на котором написан интерпретируемый язык.
Ответ 3
Оригинальный PHP - очень тривиальный интерпретатор, который не выполняет никакого генерации кода. Но есть альтернативная реализация, компилятор PHP на С++ HipHop:
https://github.com/facebook/hiphop-php
Ответ 4
PHP - это интерпретируемый C, который вы можете встроить в документы HTML. Сам язык во многом похож на C, за исключением нетипизированных переменных, множества встроенных веб-библиотек и всего, что подключено непосредственно к вашему любимому веб-серверу. Синтаксис операторов и определений функций должен быть знаком, за исключением того, что переменным всегда предшествует $, а функциям не требуются отдельные прототипы.