PHP para desarrolladores de PERL

Este capítulo enumerará las principales similitudes y diferencias entre PHP y PERL. Esto ayudará a los desarrolladores de PERL a comprender PHP muy rápidamente y evitar errores comunes.

Similitudes

  • Compiled scripting languages - Tanto Perl como PHP son lenguajes de secuencias de comandos, lo que significa que no se utilizan para producir ejecutables nativos independientes antes de la ejecución.

  • Syntax- La sintaxis básica de PHP es muy cercana a la de Perl, y ambos comparten muchas características sintácticas con C. El código es insensible a los espacios en blanco, las declaraciones terminan con punto y coma y las llaves organizan múltiples declaraciones en un solo bloque. Las llamadas a funciones comienzan con el nombre de la función, seguidas de los argumentos reales entre paréntesis y separados por comas.

  • Dollar-sign variables - Todas las variables en PHP se ven como variables escalares en Perl: un nombre con un signo de dólar ($) delante.

  • No declaration of variables - Como en Perl, no necesita declarar el tipo de variable PHP antes de usarla.

  • Loose typing of variables- Como en Perl, las variables en PHP no tienen ningún tipo intrínseco que no sea el valor que tienen actualmente. Puede almacenar un número o una cadena en el mismo tipo de variable.

  • Strings and variable interpolation - Tanto PHP como Perl interpretan más cadenas entre comillas dobles ("cadena") que entre comillas simples ('cadena').

Diferencias

  • PHP is HTML-embedded- Aunque es posible utilizar PHP para tareas arbitrarias ejecutándolo desde la línea de comandos, normalmente se conecta a un servidor web y se utiliza para producir páginas web. Si está acostumbrado a escribir scripts CGI en Perl, la principal diferencia en PHP es que ya no necesita imprimir explícitamente grandes bloques de HTML estático usando declaraciones print o heredoc y, en su lugar, puede simplemente escribir el propio HTML fuera del bloque de código PHP.

  • No @ or % variables- PHP tiene un único tipo de variable, que comienza con un signo de dólar ($). Cualquiera de los tipos de datos del lenguaje se puede almacenar en dichas variables, ya sean escalares o compuestas.

  • Arrays versus hashes - PHP tiene un solo tipo de datos llamado matriz que desempeña el papel de hashes y matrices / listas en Perl.

  • Specifying arguments to functions- Las llamadas a funciones en PHP se parecen mucho a las llamadas a subrutinas en Perl. Las definiciones de funciones en PHP, por otro lado, generalmente requieren algún tipo de lista de argumentos formales como en C o Java, que no es el csse en PERL.

  • Variable scoping in functions- En Perl, el alcance predeterminado de las variables es global. Esto significa que las variables de nivel superior son visibles dentro de las subrutinas. A menudo, esto conduce a un uso promiscuo de globales en todas las funciones. En PHP, el alcance de las variables dentro de las definiciones de funciones es local por defecto.

  • No module system as such - En PHP no existe una distinción real entre archivos de código normales y archivos de código utilizados como bibliotecas importadas.

  • Break and continue rather than next and last - PHP se parece más al lenguaje C y usa romper y continuar en lugar de la siguiente y última declaración.

  • No elsif - Una pequeña diferencia ortográfica: elsif de Perl es elseif de PHP.

  • More kinds of comments - Además de los comentarios de una sola línea de estilo Perl (#), PHP ofrece comentarios de varias líneas de estilo C (/ * comentario * /) y comentarios de una línea de estilo Java (// comentario).

  • Regular expressions - PHP no tiene una sintaxis incorporada específica para las expresiones regulares, pero tiene la mayor parte de la misma funcionalidad en sus funciones de expresión regular "compatibles con Perl".