Учебники

PHP для разработчиков на Perl

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

Скомпилированные языки сценариев — и Perl, и PHP являются языками сценариев. Это означает, что они не используются для создания собственных автономных исполняемых файлов перед выполнением.

Синтаксис . Базовый синтаксис PHP очень похож на Perl, и оба имеют много синтаксических возможностей для C. Код нечувствителен к пробелам, операторы заканчиваются точкой с запятой, а фигурные скобки объединяют несколько операторов в один блок. Вызовы функций начинаются с имени функции, за которым следуют фактические аргументы, заключенные в скобки и разделенные запятыми.

Переменные со знаком доллара — все переменные в PHP похожи на скалярные переменные в Perl: имя со знаком доллара ($) перед ним.

Нет объявления переменных — Как и в Perl, вам не нужно объявлять тип переменной PHP перед ее использованием.

Неполная типизация переменных — Как и в Perl, переменные в PHP не имеют внутреннего типа, кроме значения, которое они в настоящее время содержат. Вы можете хранить число или строку в переменной того же типа.

Строки и интерполяция переменных — PHP и Perl интерпретируют строки в двойных кавычках («string») больше, чем строки в одинарных кавычках («string»).

PHP встроен в HTML — хотя PHP можно использовать для произвольных задач, запустив его из командной строки, он чаще подключается к веб-серверу и используется для создания веб-страниц. Если вы привыкли писать скрипты CGI на Perl, основное отличие в PHP состоит в том, что вам больше не нужно явно печатать большие блоки статического HTML с помощью операторов print или heredoc, а вместо этого можно просто написать сам HTML вне блока кода PHP.

Нет переменных @ или% — в PHP есть только один вид переменных, который начинается со знака доллара ($). Любой из типов данных в языке может храниться в таких переменных, скалярных или составных.

Массивы по сравнению с хешами — PHP имеет единственный тип данных, называемый массивом, который играет роль как хешей, так и массивов / списков в Perl.

Задание аргументов для функций. Вызовы функций в PHP выглядят почти как вызовы подпрограмм в Perl. С другой стороны, определения функций в PHP обычно требуют некоторого списка формальных аргументов, как в C или Java, который не является csse в PERL.

Область видимости переменных в функциях. В Perl область видимости переменных по умолчанию — глобальная. Это означает, что переменные верхнего уровня видны внутри подпрограмм. Часто это приводит к беспорядочному использованию глобальных функций в разных функциях. В PHP область действия переменных в определениях функций является локальной по умолчанию.

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

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

Нет elsif — незначительная разница в написании: elsif Perl — это PHPif elseif.

Больше видов комментариев — В дополнение к однострочным комментариям в стиле Perl (PHP) предлагает многострочные комментарии в стиле C (/ * comment * /) и однострочные комментарии в стиле Java (// comment).

Регулярные выражения — PHP не имеет встроенного синтаксиса, специфичного для регулярных выражений, но имеет почти те же функции в своих «Perl-совместимых» функциях регулярных выражений.