PHP es un lenguaje interpretado, lo que significa que ejecuta directamente el código que escribes.
Los archivos de código PHP son archivos de texto que contienen una etiqueta de apertura de PHP, <?php, para marcar el inicio del código PHP.
Si el archivo contiene solo código PHP, puedes omitir la etiqueta de cierre ?>, que se usa para marcar el final del código PHP.
Consulta la documentación de la etiqueta de PHP para aprender más sobre la etiqueta de PHP.
<?php
// All PHP code goes here
// No closing tag required at the end
Para facilitar la lectura, todos los ejemplos de código omiten la etiqueta de apertura de PHP <?php.
Pero la incluimos en todos los ejercicios de PHP, así que no tienes que agregarla por tu cuenta.
Todas las sentencias, como las asignaciones o las llamadas a funciones, deben terminar con un ; para separar instrucciones.
Omitir el ; (como en JavaScript) no está permitido y provoca errores de sintaxis.
Aprende más sobre la separación de instrucciones en la documentación de PHP.
$message = "Success!"; // Statement correctly ends with `;`
$message = "I know JavaScript." // PHP Parse error: syntax error, [...]
PHP es un lenguaje de programación con tipado dinámico.
Los tipos de los valores solo se verifican mientras el programa se ejecuta.
Con el operador de asignación =, puedes asignar cualquier tipo de valor a cualquier nombre de variable.
Los nombres de las variables deben comenzar con el signo de dólar $.
Para profundizar en las variables, consulta la documentación de variables de PHP.
$count = 1; // Assign an integer value of 1
$count = 2; // Re-assign a new value to the variable
$count = false; // You may assign any value type
// Strings can be created by enclosing the characters
// within single `'` quotes or double `"` quotes.
$message = "Success!";
Los valores literales y los valores almacenados en variables se pueden pasar a las funciones. Al definir los argumentos de una función, se crean nuevas variables para contener los valores que se pasan.
// Declare the window_width function
function window_width($width)
{
echo $width; // Access the value passed into the function as $width
// ...
}
window_width(100); // Call the function with the literal value 100
$newWidth = 100;
window_width($newWidth); // Call the function with the value stored in $newWidth
Las funciones pueden devolver valores usando la palabra clave return.
Los valores que se devuelven pueden ser literales, estar almacenados en variables o ser el resultado de una instrucción.
function window_height()
{
$heightOffset = 10;
return 100 + $heightOffset;
}
Las funciones dentro de las clases y de sus instancias se llaman métodos.
Para llamar a un método, el nombre va precedido por la instancia y ->.
Una instancia de clase se crea con la operación new.
Los métodos tienen acceso a la variable especial $this, que hace referencia a la instancia actual.
<?php
// Calculator.php
class Calculator {
// ...
public function sub($x, $y)
{
return $this->add($x, -$y); // Calls the method add() of the current instance
}
public function add($x, $y)
{
return $x + $y;
}
}
$calculator = new Calculator(); // Creates a new instance of Calculator class
$calculator->sub(3, 1); // Calls the method sub() of the instance stored in $calculator
// => 2
Profundizaremos en las funciones y las clases en ejercicios posteriores.
Como forma básica de depuración, imprimir los valores y el contenido de las variables ayuda a entender qué sucede. PHP puede imprimir valores con:
echo $variable; para mostrar una representación en string del valorprint $variable;, que es lo mismo que echo $variable;
var_dump($variable); para obtener más información sobre el valor, por ejemplo, el tipo que PHP veCuando usas echo o print: los strings vacíos, false y null no se mostrarán.
Y las clases y las instancias provocarán un error.
Usa var_dump() para verlos.
En el editor en línea, el resultado que produces se muestra junto con los resultados de las pruebas. Cuando usas la CLI, el resultado aparece mezclado con el indicador de progreso, antes del resumen de las pruebas.
Los archivos son las unidades básicas de organización del código en PHP y en muchos otros lenguajes. Para mostrar el nombre del archivo que debes consultar en un bloque de código, usamos un comentario. Nunca tienes que agregar esos comentarios a tus archivos:
<?php
// NameOfPhpFile.php
[...]
El código, las funciones y las clases pueden estar todos en un solo archivo. Pero, por lo general, este tipo de unidades de código están en archivos separados.
Es una práctica común tener una clase por archivo, con un nombre de archivo que coincida con el de la clase.
<?php
// Calculator.php
class Calculator {
// ...
function add($x, $y)
{
return $x + $y;
}
}
Por lo general, las funciones se agrupan en archivos que describen su tema en común.
<?php
// window_handling.php
function window_paint()
{
// ...
}
function window_size($width, $height)
{
// ...
}
function window_move($x, $y)
{
// ...
}
Y a menudo hay archivos que contienen sentencias para su ejecución directa, como un index.php que se usa comúnmente como punto de entrada de una aplicación web.
<?php
// index.php
$sum = add(1, 2);
// ...
Los nombres de las clases deben estar todos en PascalCase.
Según el estándar de estilo, los nombres de variables, funciones y métodos pueden estar en camelCase o en snake_case.
Los nombres pueden contener letras a-zA-Z, números 0-9 y guiones bajos _, pero no pueden comenzar con un número.
Los comentarios de una sola línea comienzan con //, y un bloque de texto se puede envolver con /* y */ para convertirse en un comentario de varias líneas.
// Single-line comment
/*
Multi-line comment
*/