SlideShare una empresa de Scribd logo
2
Lo más leído
3
Lo más leído
5
Lo más leído
Vectores o arreglos con PHP
Se declaran y se accede a los elementos mediante
corchetes. [ ]
La primera componente es cero.
Dentro de un mismo vector puede haber elementos
de tipos distintos.
Se puede acceder a un elemento mediante un
índice asociativo.
Pueden ser multidimensionales, añadiendo más
subíndices.
Se pueden construir mediante array()
$vector1[0]=1;
$vector1[1]=‘hola’
$vector1[“nombre”]=‘Carlos’

TIPO DE LOS
ELEMENTOS

$vector2=array(1,”Jordi”,3);
$vector2=array(0=>1,1=>”Jordi”,2=>3);
$vector3=array(0=>33,1=>”Juan”,
”nombre”=>”Sara”,3=>5);

CONSTRUCCIÓN
$a[0][1]=‘Hola’;
$a[0][“clave”]=‘una cosa’;
$a[“clave1”][“clave2”][0]=‘otra cosa’;
$a[0]=‘nada’;
$a[1]=‘hola’;
$a[]=‘mundo’;

AUTOASIGNACION

MULTIDIMENSIONALES

Asigna a $a[2] el valor
‘mundo’.
$a[]=‘a’;
$a[]=‘b’; equivale a: $a=array(‘a’,’b’,’c’);
$a[]=‘c’;
$cliente1=array(
“nombre” => “Juan”,
“edad” => 23,
“profesion” => “estudiante”
);

CONSTRUCCIÓN

VECTORES ASOCIATIVOS
Un índice puede ser un número entero o una
cadena de texto.
Si el índice es una cadena no existe un índice
entero correspondiente.
Si se omite el índice, este se genera
automáticamente comenzando por cero.
Si el vector ya contiene índices enteros y se omite
alguno, el siguiente generado será el mayor
índice entero existente +1.
Si definimos dos índices enteros iguales, el último
definido sobreescribirá al anterior.
$frutas = array(
“nispero"=>array("color"=>“amarillo",“sabor"=>“dulce",
“forma"=>“redonda"),
“pomelo" => array("color" => “amarillo",“sabor" => “agrio",
“forma" =>“redonda"),
);
ANIDACIÓN
print_r($frutas); Mostrará:
Array(
[nispero]=>Array([color]=>naranja [sabor] =>dulce
[forma] =>redonda)
[pomelo]=>Array([color]=>amarillo [sabor]=>agrio
[forma]=>redonda)
)
$cosas=array(
“frutas”=>array(“a”=>”naranja”,”b”=>”platano”,
“c”=>”manzana”)
“numeros”=>array(1,2,3,4,5,6)
“equipos” =>array(“primero”,5=>”segundo”,
”tercero”)
);

ANIDACIÓN

print_r($cosas); Mostrará:
Array(
[frutas]=>Array([a]=>naranja[b] =>platano[c] =>manzana)
[numeros]=>Array([0]=>1[1]=>2[2]=>3[3]=>4[4]=>5[5]=>6)
[equipos]=>Array([0]=>primero[5] =>segundo[6] =>tercero)
)
$mivector=array(1,1,1,1,1,8=>1,4 =>1,22,3 =>64);
print_r($mivector);

Mostrará:

Array([0]=>1[1]=>1[2]=>1[3]=>64[4]=>1[8]=>1[9]=>22)
El 64 sobreescribe al anterior valor del elemento 3.
El 22 se aloja en el elemento 9 que es el índice de valor
máximo(8) más uno.
En PHP cada vector tiene asociado un puntero interno que
apunta a un elemento del vector y que puede ser usado para
recorrer vectores y otras operaciones, las funciones que
operan con el puntero interno son:
reset($array);
Resetea el puntero interno al principio del array.
end($array);
Mueve el puntero al último elemento del array.
next($array);
Mueve el puntero al proximo elemento del array.
prev($array);
Mueve el puntero al elemento previo respecto al actual.
current($array);
Devuelve el elemento apuntado actualmente por el puntero
interno del array.
key($array);
Devuelve el índice del elemento apuntado actualmente por el
puntero interno del array, si es un vector asociativo devuelve la
clave del elemento actual.
$array1=each($array)
Devuelve un vector clave-valor con los valores correspondientes
al elemento actual del array y además mueve el puntero al
elemento siguiente, si es un vector asociativo devuelve clavevalor, si es un vector común devuelve indice-valor.

Ejemplo:
$pareja=each($vec);
list($clave,$valor)=$pareja;
echo(“La pareja clave-valor actual de vec es $clave = $valor”);
sort($array);
Ordena un vector según los valores de sus elementos, si este es
asociativo considera claves y valores como elementos
comunes (no los distingue). Ordena en orden ascendiente.
rsort($array);
Idem anterior pero ordena en orden descendiente.
asort($array);
Ordena un vector según los valores de sus elementos pero
manteniendo las asociaciones clave-valor. Ordena los pares
ordenados clave-valor según “valor”.
arsort($array);
Idem anterior pero en orden descendiente.
ksort($array);
Ordena un vector asociativo por los valores de sus “claves”
teniendo en cuenta las asociaciones clave-valor.
krsort($array);
Idem anterior pero en orden descendiente.

uksort($array,funcion);
Ordena un vector asociativo por “clave” usando para comparar
las claves la función pasada como parámetro.
uasort($array,funcion);
Ordena un vector por los “valores” de sus elementos preservando
la relación clave-valor de un array asociativo usando para
ordenar la funcion provista por el usuario.
$vector=array(“d”=>”banana”,
“a”=>”limon”,”c”=>”pera”, “b”=>”aguacate”);
Función Resultado

Resultado

sort($vector)

“a”,“aguacate”,”b”,”banana”,”c”,”d”,”limon”,”pera”

rsort($vector)

“pera”,”limon”,”d”,”c”,”banana”,”b”,”aguacate”,”a”

asort($vector)

“b”,”aguacate”,”d”,”banana”,”a”,”limon”,”c”,”pera”

arsort($vector)

“c”,”pera”,”a”,”limon”,”d”,”banana”,”b”,”aguacate”

ksort($vector)

“a”,”limon”,”b”,”aguacate”,”c”,”pera”,”d”,”banana”

krsort($vector)

“d”,”banana”,”c”,”pera”,”b”,”aguacate”,”a”,”limon”
Padding:
array=array_pad($mivector,tamaño,valor);
Rellena $mivector con valor hasta que tenga tamaño
elementos, si tamaño es positivo completa
agregando elementos hacia la derecha, si es
negativo completa hacia la izquierda.
Ejemplo:
$entrada = array (12, 10, 9);
$resultado = array_pad ($entrada, 5, 0); // resultado:
(12, 10, 9, 0, 0)
$resultado = array_pad ($entrada, -7, -1); // resultado:
(-1, -1, -1, -1, 12, 10, 9)
List:
List en realidad no es una instrucción, sino una construcción
especial del lenguaje que permite asignar a un grupo de
variables los elementos de un vector.

Ejemplo:
$vector=array(1,2);
list($a,$b)=$vector; //$a=1, $b=2
Si el vector tiene más elementos que las variables que se usan
en list entonces el último elemento de list será un vector con
todos los elementos que quedaban en él (la asignación se
hace de izquierda a derecha).
Merge:
$vec1=array_merge($array1,$array2,....);
Si los vectores son asociativos hace una unión de los vectores en
donde si 2 o más vectores tienen la misma clave sólo una
queda en el vector resultado. Si los vectores no son
asociativos (indexados por número) entonces el resultado
tiene todos los elementos de los “n” vectores concatenados.
Sub-Vectores:
$vec1=array_slice($array,offset,cantidad);
Devuelve un sub-vector de $array a partir del offset indicado y
con la cantidad de elementos indicada,si cantidad no se
especifica devuelve todos los elementos desde offset hasta el
fin del vector.
$vec=array(10,6,7,8,23);
$res=array_slice($vec,1,3); //deja en la variable $res 6,7,8
Count:
$cantidad=count($vector);
Devuelve la cantidad de elementos de un vector.
Splice:
$vec1=array_splice($vec,offset,cantidad,$vec_reemplazo);
Sustituye los elementos de $vec por los de $vec_reemplazo a
partir del offset y hasta cantidad, si no le pasamos
vec_reemplazo elimina los elementos a partir del offset y hasta
cantidad.
Si no se pasa cantidad se eliminan o reemplazan todos los
elementos desde el offset indicado hasta el fin del vector.
Shuffle:
shuffle(array);
Desordena en forma aleatoria los elementos de un vector.
Pertenencia:
$boolean = in_array($elem,$miarray,$strict);
Devuelve verdadero o falso según $elem pertenezca o no a
$miarray, si $strict es true tendrá en cuenta el tipo de los
valores.
Range:
$array=range(low,high);
Crea un vector con los números correspondientes desde low
hasta high.
Ejemplo:
$vec=range(6,12); // $vec=(6,7,8,9,10,11,12);
Reverse:
array=array_reverse(array);
Devuelve el vector invertido.
Compact:
array=compact(nombre_var1,nombre_var2,....,nombre_varN);
Crea un vector asociativo cuyas claves son los nombres de las
variables y los valores el contenido de las mismas.
Ejemplo:
$ciudad=”miami”;
$edad=”23”;
$vec=compact(“ciudad”,”edad”);
Es equivalente a:
$vec=array(“ciudad”=>”miami”,”edad”=>”23”);
Función:
array_walk permite aplicar una función a todos y cada uno de los
elementos de un vector. La sintaxis es:
array_walk($array1,funcion,variable_extra);
Nos sirve para aplicar una función pasada como parámetro a
cada uno de los elementos del vector $array1, la función
recibirá como parámetro en primer lugar el “valor” del
elemento de $array1 y en segundo lugar la “clave”, si el vector
no es asociativo la clave es el numero de índice (0,1,2...).
variable_extra es opcional.
Si se pasa variable_extra que puede ser cualquier tipo de PHP
incluyendo un objeto, la función recibe dicha variable como
tercer parámetro.
Otras funciones:
array_diff() Calcula las diferencias entre dos arrays.
array_fill() Rellena un array con valores.
array_search() Busca un valor y devuelve su posicion.
array_sum() Calcula la suma de todos los valores.
&array1=array_keys($array)
Devuelve un vector con todas las claves de un vector asociativo.

&array1=array_values($array)
Devuelve un vector con todos los valores de un vector asociativo.

Más contenido relacionado

PDF
Cap 3 - Herencia simple y múltiple.pdf
DOC
1061504366rad ca89d
PPTX
Objeto relacional bases datos 2
PPTX
Estructura de Datos Unidad - V: Métodos de Ordenamiento
PPTX
Programación 3: Grafos, representación y operaciones
PDF
El problema de la mochila
PPTX
Fundamentos de BD - Unidad 5 algebra relacional
DOCX
152289363 consultas-en-prolog
Cap 3 - Herencia simple y múltiple.pdf
1061504366rad ca89d
Objeto relacional bases datos 2
Estructura de Datos Unidad - V: Métodos de Ordenamiento
Programación 3: Grafos, representación y operaciones
El problema de la mochila
Fundamentos de BD - Unidad 5 algebra relacional
152289363 consultas-en-prolog

Similar a Vectores o arreglos con PHP (20)

PDF
Arreglos php
PPTX
PPTX
Vectores (1)
PPTX
Vectores
PPTX
Vectores
PPTX
PPTX
Vectores (1)
PDF
Vector
DOCX
Matrices en php
PPT
Curso TIC de PHP y MSQL Parte 2
PDF
Perl2 arrays
DOCX
Matrices en php
PPT
Arrays en PHP y Funciones de Mysql
PPTX
PDF
Tutorial de php
PDF
2 3 arrays_php
PPTX
Tipo de datos
PPTX
Tipo de datos
PPTX
Tipo de datos
Arreglos php
Vectores (1)
Vectores
Vectores
Vectores (1)
Vector
Matrices en php
Curso TIC de PHP y MSQL Parte 2
Perl2 arrays
Matrices en php
Arrays en PHP y Funciones de Mysql
Tutorial de php
2 3 arrays_php
Tipo de datos
Tipo de datos
Tipo de datos
Publicidad

Más de Ingeniería Nica (20)

PDF
Programa de curso de formulación y evaluación de proyectos informáticos
PPT
Sesiones en PHP
PDF
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
PDF
Programa de Curso on line de Android!
PDF
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
PDF
Curriculum vitae 2012 c arlos van de velde
PDF
Programa de curso excel 2010 financiero
PDF
Programa de curso de project 2010
DOCX
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
PDF
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
PDF
Programa de curso excel 2010
DOCX
Manual de usuario de sistema de vinculación Universidad Empresa
PDF
Programa de curso de desarrollo web con html5
PDF
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
PDF
Brochure IN
PDF
Curso SQL 2012
PDF
Resultado concurso HTML5 OCT2012
PDF
Información Diplomado en Admón de Bases de Datos I era Edición
PDF
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
PPTX
EL COEFICIENTE DE ELASTICIDAD
Programa de curso de formulación y evaluación de proyectos informáticos
Sesiones en PHP
Programa de desarrollo y administración de bases de datos con SQL Server 2012...
Programa de Curso on line de Android!
Tesis Propuesta de un sistema para la gestión de la vinculación unviersidad e...
Curriculum vitae 2012 c arlos van de velde
Programa de curso excel 2010 financiero
Programa de curso de project 2010
La necesidad de un sistema automatizado de vinculación Universidad – Empresa
Curso de Desarrollo de sitios web dinámicos con PHP y MySQL
Programa de curso excel 2010
Manual de usuario de sistema de vinculación Universidad Empresa
Programa de curso de desarrollo web con html5
Programa de curso de administración de bases de datos con SQL Server 2012 Ava...
Brochure IN
Curso SQL 2012
Resultado concurso HTML5 OCT2012
Información Diplomado en Admón de Bases de Datos I era Edición
Información Diplomado en Administración de Bases de Datos con Mysql primera E...
EL COEFICIENTE DE ELASTICIDAD
Publicidad

Último (20)

PPTX
Presentación del Seminario Teorías del aprendizaje y problemas de contexto - ...
PDF
Fundamentos_Educacion_a_Distancia_ABC.pdf
PDF
Habilidades sociales en la era digital (25-2))
PDF
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
PDF
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
PDF
JESUCRISTO ESTÁ EN LA TIERRA
PDF
IA y Canva: Un aliado fundamental para crear diseños profesionales en minutos
PDF
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
PPTX
Guía Esencial para Empleadores - Cumplimiento con el IESS
PDF
DI, TEA, TDAH.pdf guía se secuencias didacticas
PDF
Escuela Sabática 6. A través del Mar Rojo.pdf
PDF
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
DOCX
Tarea De El Colegio Coding For Kids 1 y 2
PDF
Habilidades de comunicación en la era digital (planeación)
PDF
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
PDF
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
PPTX
caso clínico iam clinica y semiología l3.pptx
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
Presentación del Seminario Teorías del aprendizaje y problemas de contexto - ...
Fundamentos_Educacion_a_Distancia_ABC.pdf
Habilidades sociales en la era digital (25-2))
Conecta con la Motivacion - Brian Tracy Ccesa007.pdf
benveniste-problemas-de-linguistica-general-i-cap-6 (1)_compressed.pdf
JESUCRISTO ESTÁ EN LA TIERRA
IA y Canva: Un aliado fundamental para crear diseños profesionales en minutos
Gasista de unidades unifuncionales - pagina 23 en adelante.pdf
Guía Esencial para Empleadores - Cumplimiento con el IESS
DI, TEA, TDAH.pdf guía se secuencias didacticas
Escuela Sabática 6. A través del Mar Rojo.pdf
Salvese Quien Pueda - Andres Oppenheimer Ccesa007.pdf
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
Tarea De El Colegio Coding For Kids 1 y 2
Habilidades de comunicación en la era digital (planeación)
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
La Evaluacion Formativa en Nuevos Escenarios de Aprendizaje UGEL03 Ccesa007.pdf
caso clínico iam clinica y semiología l3.pptx
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL

Vectores o arreglos con PHP