Variables en PHP: Conceptos Fundamentales
Declaración y Nomenclatura
Las variables en PHP son representadas con un signo de dólar ($) seguido por el nombre de la variable.
En PHP, las variables son declaradas anteponiendo el símbolo del dólar ($) al nombre de esta.
Para declarar un nombre de variable válido, éste tiene que empezar con una letra (o si no empieza con una letra, tendrá que hacerlo con un carácter de subrayado), seguido de cualquier número de letras, números y caracteres de subrayado, sin espacios.
El nombre de la variable es sensible a minúsculas y mayúsculas. $variable, $Variable, $variAble, $VariAble, etc. Por ejemplo, $nombre, no es igual que $Nombre.
Cuando el intérprete PHP detecta un error en la sintaxis al declarar una variable, cuando tratamos de accecer a la página php nos aparecerá un mensaje de error.
Lea también: IVA 21% Excel
Tipos de Datos y Operadores
El operador de asignación es "=". Se podría pensar que es como un "igual a". No lo es. El operador igual en programación no tiene el mismo sentido que en matemáticas.
El operador comparador de igualdad es ==. Como su propio nombre indica, sirve para comparar dos valores o variables y no para asignar valores.
Existen tipos de datos como los números de punto flotante a los que normalmente llamamos “números decimales”, por ejemplo, 9.876.
Ambos tienen mucha precisión, pero double es el más preciso (con más decimales).
Manejo de Texto con echo
Esta instrucción muchas veces se dice que sirve para que se muestre por pantalla un texto, una variable, o una combinación de texto y variables.
Lea también: Guía IVA reducido
Por ejemplo: echo "salida por pantalla. "; hará que se inserte este texto en el documento html.
Sin embargo echo "
Salida por pantalla.
"; también es válido.En general en php son válidas tanto las comillas dobles como las comillas simples, por lo que se puede escribir tanto echo "
Salida por pantalla.
"; como echo 'Salida por pantalla.
'.Los paréntesis no son necesarios (echo en realidad no es una función sino que es lo que se denomina una «construcción del lenguaje», de ahí que no sean estrictamente necesarios los paréntesis), pero se pueden incluir si se desea.
Ten en cuenta que $a se muestra por pantalla como 5 porque el intérprete de PHP considera que debe mostrarse siempre el valor de la variable, incluso si va dentro de un texto.
Lea también: ¿Cómo localizar tus XML del SAT?
Cuando antecedemos un nombre de variable del carácter \ hacemos que se interprete como texto en lugar de como una variable.
Manejo de Arrays en PHP
Definición y Características de los Arrays
En PHP, un array es una estructura de datos versátil que asocia valores a claves, funcionando como un mapa ordenado.
La asignación de arrays siempre implica la copia de valores.
Un índice de array puede ser cualquier valor de cadena, incluso un valor que también es un valor en el array.
Esto resulta ser una propiedad útil.
Creación y Acceso a Elementos
La clave es opcional.
También es una forma alternativa de crear un array.
Para acceder a los elementos del array, se utiliza la clave entre corchetes.
Puedes asignar un nuevo valor a ese elemento usando su clave.
Si la clave no existe, el acceso a los elementos del array resulta en null.
Particularidades de los Índices de Array
Siempre usa comillas alrededor de un índice de array literal de cadena.
Esto no significa que siempre debas entrecomillar la clave.
Considera los siguientes ejemplos al usar índices de arrays:
- echo "Bad: " . $array['$i'] .
- echo "Good: " . $array[$i] .
Es importante recordar que un nombre de variable sin comillas, como bar en el primer ejemplo, puede ser interpretado como una constante o una palabra clave, o una constante en otro código puede interferir.
Desestructuración y Desempaquetado de Arrays
Las construcciones del lenguaje list() permiten desestructurar arrays.
Los elementos del array serán ignorados si la variable no se proporciona.
A partir de PHP 7.1.0, los arrays asociativos también pueden ser desestructurados.
El desempaquetado de arrays con el operador ... está disponible a partir de PHP 7.4.0.
Es posible expandir múltiples veces, y añadir elementos normales antes o después del operador ....
Un ejemplo de desempaquetado es: $arr6 = [...$arr4, ...$arr5];
Colorear Texto en la Consola con PHP
La Historia y el Estándar ANSI
Es posible darle color a los textos mostrados en aplicaciones de línea de comandos.
Establecer colores en consola se lo podemos agradecer al estándar ANSI y sus secuencias de escape que incluyen colores.
Las secuencias de escape incluyen \n, \r, \t seguramente las utilizas regularmente en cadenas de texto.
Adicionalmente tenemos las secuencias de asignación de colores y estilos al texto en consola que tienen el siguiente formato:
Estructura de las Secuencias de Escape ANSI
La cadena debe iniciar con el código 27 decimal pero convertido a octal, hexadecimal o Unicode.
En esta oportunidad usaremos la versión en octal “\033” (también puedes usar “\e”).
A continuación debe agregarse el caracter “[“ que es denominado CSI (Control Sequence Introducer en inglés).
La secuencia preliminarmente sería “\033[“, pero faltan los colores.
La lista de colores básica es restringida, para texto son 8 colores que puedes “convertir” en 16 (si usas la opción de texto en negrita).
Esta opción de negrita se fija con el primer dígito posterior al caracter “[“ y se separa con punto y coma “0;” (negrita desactivada) ó “1;” (negrita activada).
Los colores de texto tienen un código numérico que va del 30 al 37.
Los colores de fondo se agregan al final de la cadena antecedidos por “;”.
Para finalizar se usa la letra “m”.
La cadena completa de color se verá de la siguiente forma: “\033[0;37;41m”.
IMPORTANTE: Ten presente que al fijar un color, todo el texto de consola de ese punto en adelante usará la configuración, para retornar a los valores por defecto de la consola se usa una cadena de scape “Reset”, la cadena es “\033[0m”.
Una cadena de texto completa con color aplicado se vería así, incluyendo la cadena de reset para volver al color estándar de tu consola: “\033[0;37;41mMi Texto en Color Blanco y Fondo Rojo\033[0m”.
