Conversión de cadenas
Cuando una cadena se evalúa como un valor numérico, el valor resultante y el tipo se determinan como sigue.
La cadena se evaluará como un doble si contiene cualquiera de los caracteres '.', 'e', o 'E'. En caso contrario, se evaluará como un entero.
El valor viene dado por la porción inicial de la cadena. Si la cadena comienza con datos de valor numérico, este será el valor usado. En caso contrario, el valor será 0 (cero). Los datos numéricos válidos son un signo opcional, seguido por uno o más dígitos (que opcionalmente contengan un punto decimal), seguidos por un exponente opcional. El exponente es una 'e' o una 'E' seguidos por uno o más dígitos.
Cuando la primera expresión es una cadena, el tipo de la variable dependerá de la segunda expresión.
$foo = 1 + "10.5"; // $foo es doble (11.5)$foo = 1 + "-1.3e3"; // $foo es doble (-1299)$foo = 1 + "bob-1.3e3"; // $foo es entero (1)$foo = 1 + "bob3"; // $foo es entero (1)$foo = 1 + "10 Cerditos"; // $foo es entero (11)$foo = "10.0 cerdos " + 1; // $foo es entero (11)$foo = "10.0 cerdos " + 1.0; // $foo es double (11)
La siguiente línea le ayudará a comprobar los resultados en un script de PHP :
echo "$foo==$foo; el tipo es " . gettype( $foo ) . "<br>n";
Arreglos
En PHP los arreglos actualmente actúan tanto como tablas hash ( arreglos asociativos ) o como arreglos indexados ( vectores ).
Arreglos Unidimensionales
PHP soporta tanto arreglos escalares como asociativos. Se puede crear una arreglo usando las funciones list() o array(), o se puede asignar el valor de cada elemento del arreglo de manera explícita.
$a[0] = "abc"; $a[1] = "def";$b[“foo”] = 13;
También se puede crear un arreglo simplemente añadiéndole valores a éste. Cuando se asigna un valor a una variable arreglo usando corchetes vacíos, el valor se añadirá al final del arreglo.
$a[] = "hola"; // $a[2] == "hola"
$a[] = "mundo"; // $a[3] == "mundo"
Los arreglos se pueden ordenar usando diversas funciones de PHP : asort(), arsort(), ksort(), rsort(), sort(), uasort() y uksort() dependiendo del tipo de ordenación requerida.
También se puede contar el número de elementos de un arreglo usando la función count() y recorrerlo usando las funciones next() y prev(). Otra forma habitual de recorrer un arreglo es usando la función each().
Arreglos Multidimensionales
Los arreglos multidimensionales son bastante simples actualmente. Para cada dimensión del arreglo, se puede añadir otro valor
al final :
$a[1] = $f; // ejemplos de una sola dimensión$a["foo"] = $f; $a[1][0] = $f; // bidimensional$a["foo"][2] = $f; // (se pueden mezclar índices numéricos y asociativos)$a[3]["bar"] = $f; // (se pueden mezclar índices numéricos y asociativos)$a["foo"][4]["bar"][0] = $f; // tetradimensional!
Se pueden "llenar" arreglos multidimensionales de muchas formas, pero la más fácil es comprender cómo usar la función array() para arreglos asociativos. Estos dos ejemplos llenarán el arreglo unidimensional de la misma manera :
// Ejemplo 1:
$a["color"] = "rojo";$a["sabor"] = "dulce";$a["forma"] = "redondeada";$a["nombre"] = "manzana";$a[3] = 4;
// Ejemplo 2:
$a = array("color"=>"rojo","sabor"=>"dulce","forma"=>"redondeada","nombre"=>"manzana",3=>4);
Su representación gráfica podría ser la siguiente :
$a
color rojo
sabor dulce
forma redondeada
nombre manzana
3 4
La función array() se puede usar para generar arreglos multidimensionales :
<?php
$a = array("manzana" => array("color"=>"rojo","sabor"=>"dulce","forma"=>"redondeada", "naranja" => array("color"=>"naranja","sabor"=>"ácido","forma"=>"redondeada", "plátano" => array("color"=>"amarillo","sabor"=>"dulce","forma"=>"aplatanada");
echo $a["manzana"]["sabor"]; // devolverá "dulce"
?>
Su representación gráfica podría ser la siguiente :
$a color sabor forma
manzana rojo dulce redondeada
naranja naranja ácido redondeada
plátano amarillo dulce aplatanada
Cuando una cadena se evalúa como un valor numérico, el valor resultante y el tipo se determinan como sigue.
La cadena se evaluará como un doble si contiene cualquiera de los caracteres '.', 'e', o 'E'. En caso contrario, se evaluará como un entero.
El valor viene dado por la porción inicial de la cadena. Si la cadena comienza con datos de valor numérico, este será el valor usado. En caso contrario, el valor será 0 (cero). Los datos numéricos válidos son un signo opcional, seguido por uno o más dígitos (que opcionalmente contengan un punto decimal), seguidos por un exponente opcional. El exponente es una 'e' o una 'E' seguidos por uno o más dígitos.
Cuando la primera expresión es una cadena, el tipo de la variable dependerá de la segunda expresión.
$foo = 1 + "10.5"; // $foo es doble (11.5)$foo = 1 + "-1.3e3"; // $foo es doble (-1299)$foo = 1 + "bob-1.3e3"; // $foo es entero (1)$foo = 1 + "bob3"; // $foo es entero (1)$foo = 1 + "10 Cerditos"; // $foo es entero (11)$foo = "10.0 cerdos " + 1; // $foo es entero (11)$foo = "10.0 cerdos " + 1.0; // $foo es double (11)
La siguiente línea le ayudará a comprobar los resultados en un script de PHP :
echo "$foo==$foo; el tipo es " . gettype( $foo ) . "<br>n";
Arreglos
En PHP los arreglos actualmente actúan tanto como tablas hash ( arreglos asociativos ) o como arreglos indexados ( vectores ).
Arreglos Unidimensionales
PHP soporta tanto arreglos escalares como asociativos. Se puede crear una arreglo usando las funciones list() o array(), o se puede asignar el valor de cada elemento del arreglo de manera explícita.
$a[0] = "abc"; $a[1] = "def";$b[“foo”] = 13;
También se puede crear un arreglo simplemente añadiéndole valores a éste. Cuando se asigna un valor a una variable arreglo usando corchetes vacíos, el valor se añadirá al final del arreglo.
$a[] = "hola"; // $a[2] == "hola"
$a[] = "mundo"; // $a[3] == "mundo"
Los arreglos se pueden ordenar usando diversas funciones de PHP : asort(), arsort(), ksort(), rsort(), sort(), uasort() y uksort() dependiendo del tipo de ordenación requerida.
También se puede contar el número de elementos de un arreglo usando la función count() y recorrerlo usando las funciones next() y prev(). Otra forma habitual de recorrer un arreglo es usando la función each().
Arreglos Multidimensionales
Los arreglos multidimensionales son bastante simples actualmente. Para cada dimensión del arreglo, se puede añadir otro valor
al final :
$a[1] = $f; // ejemplos de una sola dimensión$a["foo"] = $f; $a[1][0] = $f; // bidimensional$a["foo"][2] = $f; // (se pueden mezclar índices numéricos y asociativos)$a[3]["bar"] = $f; // (se pueden mezclar índices numéricos y asociativos)$a["foo"][4]["bar"][0] = $f; // tetradimensional!
Se pueden "llenar" arreglos multidimensionales de muchas formas, pero la más fácil es comprender cómo usar la función array() para arreglos asociativos. Estos dos ejemplos llenarán el arreglo unidimensional de la misma manera :
// Ejemplo 1:
$a["color"] = "rojo";$a["sabor"] = "dulce";$a["forma"] = "redondeada";$a["nombre"] = "manzana";$a[3] = 4;
// Ejemplo 2:
$a = array("color"=>"rojo","sabor"=>"dulce","forma"=>"redondeada","nombre"=>"manzana",3=>4);
Su representación gráfica podría ser la siguiente :
$a
color rojo
sabor dulce
forma redondeada
nombre manzana
3 4
La función array() se puede usar para generar arreglos multidimensionales :
<?php
$a = array("manzana" => array("color"=>"rojo","sabor"=>"dulce","forma"=>"redondeada", "naranja" => array("color"=>"naranja","sabor"=>"ácido","forma"=>"redondeada", "plátano" => array("color"=>"amarillo","sabor"=>"dulce","forma"=>"aplatanada");
echo $a["manzana"]["sabor"]; // devolverá "dulce"
?>
Su representación gráfica podría ser la siguiente :
$a color sabor forma
manzana rojo dulce redondeada
naranja naranja ácido redondeada
plátano amarillo dulce aplatanada

