logo
Documento sin título
Documento sin título

Manual de PHP para Principiantes (Curso Acelerado de Php)

Arrays
Los arrays actualmente actúan tanto como tablas hash (arrays asociativos) como arrays indexados (vectores).
Arrays unidimensionales
PHP soporta tanto arrays escalares como asociativos. De hecho, no hay diferencias entre los dos. Se puede crear una array
usando las funciones list() o array(), o se puede asignar el valor de cada elemento del array de manera explícita.
$a[0] = "abc";
$a[1] = "def";
$b["foo"] = 13;

También se puede crear un array simplemente añadiendo valores al array. Cuando se asigna un valor a una variable array
usando corchetes vacíos, el valor se añadirá al final del array.
$a[] = "hola"; // $a[2] == "hola"
$a[] = "mundo"; // $a[3] == "mundo"
Los arrays se pueden ordenar usando las funciones asort(), arsort(), ksort(), rsort(), sort(), uasort(), usort(), y uksort()
dependiendo del tipo de ordenación que se desee.
Se puede contar el número de elementos de un array usando la función count().
Se puede recorrer un array usando las funciones next() y prev(). Otra forma habitual de recorrer un array es usando la
función each().

Arrays Multidimensionales
Los arrays multidimensionales son bastante simples actualmente. Para cada dimensión del array, se puede añadir otro valor
[clave] 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!
En PHP3 no es posible referirse a arrays multidimensionales directamente dentro de cadenas. Por ejemplo, lo siguiente no tendrá el resultado deseado:
$a[3][’bar’] = ’Bob’;
echo "Esto no va a funcionar: $a[3][bar]";
En PHP3, lo anterior tendrá la salida Esto no va a funcionar: Array[bar]. De todas formas, el operador de
concatenación de cadenas se puede usar para solucionar esto:
$a[3][’bar’] = ’Bob’;
echo "Esto no va a funcionar: " . $a[3][bar];
En PHP4, sin embargo, todo el problema se puede circunvenir encerrando la referencia al array (dentro de la cadena) entre llaves:
$a[3][’bar’] = ’Bob’;
echo "Esto va a funcionar: {$a[3][bar]}";
Se pueden "rellenar"arrays multidimensionales de muchas formas, pero la más difícil de comprender es cómo usar el
comando array() para arrays asociativos. Estos dos trozos de código rellenarán el array unidimensional de la misma
manera:
# Ejemplo 1:

$a["color"] = "rojo";
$a["sabor"] = "dulce";
$a["forma"] = "redondeada";
$a["nombre"] = "manzana";
$a[3] = 4;
# Example 2:
$a = array(
"color" => "rojo",
"sabor" => "dulce",
"forma" => "redondeada",
"nombre" => "manzana",
3 => 4
);
La función array() se puede anidar para arrays multidimensionales:
<?
$a = array(
"manzana" => array(
"color" => "rojo",
"sabor" => "dulce",
"forma" => "redondeada"
),
"naranja" => array(
"color" => "naranja",
"sabor" => "ácido",
"forma" => "redondeada"
),
"plátano" => array(
"color" => "amarillo",
"sabor" => "paste-y",
"forma" => "aplatanada"
)
);
echo $a["manzana"]["sabor"]; # devolverá "dulce"
?>

Objetos
Inicialización de Objetos
Para inicializar un objeto, se usa la sentencia new para instanciar el objeto a una variable.
class foo {
function do_foo () {
echo "Doing foo.";
}
}
$bar = new foo;
$bar->do_foo();

Type juggling
PHP no requiere (o soporta) la declaración explícita del tipo en la declaración de variables; el tipo de una variable se
determina por el contexto en el que se usa esa variable. Esto quiere decir que si se asigna un valor de cadena a la variable var, var se convierte en una cadena. Si después se asigna un valor entero a la variable var, se convierte en una variable entera.
Un ejemplo de conversión de tipo automática en PHP3 es el operador suma ’+’. Si cualquiera de los operandos es un doble, entonces todos los operandos se evalúan como dobles, y el resultado será un doble. En caso contrario, los operandos se interpretarán como enteros, y el resultado será también un entero. Nótese que esto NO cambia los tipos de los operandos propiamente dichos; el único cambio está en cómo se evalúan los operandos.
$foo = "0"; // $foo es una cadena (ASCII 48)
$foo++; // $foo es la cadena "1" (ASCII 49)
$foo += 1; // $foo ahora es un entero (2)
$foo = $foo + 1.3; // $foo ahora es un doble (3.3)
$foo = 5 + "10 Cerditos Pequeñitos"; // $foo es entero (15)
$foo = 5 + "10 Cerditos"; // $foo es entero (15)
Si los últimos dos ejemplos anteriores parecen confusos, vea Conversión de cadenas.
Si se desea obligar a que una variable sea evaluada con un tipo concreto, mire la sección Forzado de tipos. Si se desea cambiar el tipo de una variable, vea la función settype().
Si quisiese probar cualquiera de los ejemplos de esta sección, puede cortar y pegar los ejemplos e insertar la siguiente línea para ver por sí mismo lo que va ocurriendo:
echo "\$foo==$foo; el tipo es " . gettype( $foo ) . "<br>\n";
Nota: La posibilidad de una conversión automática a array no está definida actualmente.
$a = 1; // $a es un entero
$a[0] = "f"; // $a se convierte en un array, en el que $a[0] vale "f"
Aunque el ejemplo anterior puede parecer que claramente debería resultar en que $a se convierta en un array, el
primer elemento del cual es ’f’, consideremos esto:
$a = "1"; // $a es una cadena
$a[0] = "f"; // ¿Qué pasa con los índices de las cadenas? ¿Qué ocurre?
Dado que PHP soporta indexación en las cadenas vía offsets usando la misma sintaxis que la indexación de arrays, el
ejemplo anterior nos conduce a un problema: ¿debería convertirse $a en un array cuyo primer elemento sea "f", o
debería convertirse "f" en el primer carácter de la cadena $a?
Por esta razón, tanto en PHP 3.0.12 como en PHP 4.0b3-RC4, el resultado de esta conversión automática se
considera que no está definido. Los parches se están discutiendo, de todas formas.

Forzado de tipos
El forzado de tipos en PHP funciona como en C: el nombre del tipo deseado se escribe entre paréntesis antes de la variable a la que se pretende forzar.
$foo = 10; // $foo es un entero
$bar = (double) $foo; // $bar es un doble
Los forzados de tipo permitidos son:
• (int), (integer) - fuerza a entero (integer)
• (real), (double), (float) - fuerza a doble (double)
• (string) - fuerza a cadena (string)
• (array) - fuerza a array (array)
• (object) - fuerza a objeto (object)
Nótese que las tabulaciones y espacios se permiten dentro de los paréntesis, así que los siguientes ejemplos son
funcionalmente equivalentes:
$foo = (int) $bar;
$foo = ( int ) $bar;
Puede no ser obvio que ocurrirá cuando se fuerce entre ciertos tipos. Por ejemplo, lo siguiente debería ser tenido en cuenta.
Cuando se fuerza el cambio de un escalar o una variable de cadena a un array, la variable se convertirá en el primer
elemento del array:
$var = ’ciao’;
$arr = (array) $var;
echo $arr[0]; // produce la salida ’ciao’
Cuando se fuerza el tipo de una variable escalar o de una cadena a un objeto, la variable se convertirá en un atributo del objeto; el nombre del atributo será ’scalar’:
$var = ’ciao’;
$obj = (object) $var;
echo $obj->scalar; // produce la salida ’ciao’

Paginas del Manual

01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 | 10 | 11

Opine en este Foro

 

 

Documento sin título
 
Documento sin título
Av. Petith Thouars 1255 Of. 302 Lima - Perú
Teléfonos: 2662540 / 7959969
Publicidad:
ventas@encuentraperu.com
Peruanos en el exterior, Peruanos en EE.UU, Peruanos en Argentina, Peruanos en colombia, Peruanos en Ecuador, Peruanos en Mexico, Peruanos en Venezuela, peruanos en España,Peruanos en Brazil, Peruanos en Bolivia, Peruans en Dinamarca, Peruanos en Dinamarca, Peruanos en Bulgaria, Peruanos en Bélgica, Peruanos en Chile, Peruanos en China, Peruanos en corea, Peruanos en Francia, Peruanos en Grecia, Peruanos en Holanda, Peruanos en Inglaterra, Peruanos en Japon, Peruanos en Inglaterra, Peruanos en Egipto, Peruanos en Camerun, Peruanos en Austria, Peruanos Millonarios, Chicas lindas del perú en el extranjero, Doctores del Peru en el Extranjero, Peruanos Deportistas en el Extrabjero, Fisicoculturistas Peruanos en el Extranjero, Musicos peruanos en el Extranjero, modelos Peruanos en el Exterior, Poetas Peruanos en el Exterior, Chefs peruanos en el Exterior, Como hacer un proyecto en el Exterior, Organizaciones peruanas en el Exterior, Ultimas noticias del Perú, Lo que suce den el Mundo y en el Perú, Quejas de peruanos en el Extranjero, Club de Peruanos en el Extranjero, Embajadas del Perú en el Exterior, Estas en el Exterior Reunate con mas peruanos, Peruanos por todo el Mundo, Manuales, Manuales Practicos, Videos de Peruanos, Fotos de Chicas, fotos de peruanos, Conosca a Gente del perú.