PHP Curso Dia 22/12/23

Descargar archivo completo TXT
Ejercicio mostrar el contenido de una matriz con ForEach, WHile y DoWhile

    $colores=array('amarillo','rojo','verde','azul','marrón', 'naranja','violeta');
	foreach($colores as $color){
		echo $color." ";
	}
	$contador=0;
	while($contador<sizeof($colores)){
		echo $colores[$contador]." ";
		$contador++;
	}
	$contador=0
	do{
		echo $colores[$contador]." ";
		$contador++;
	}while($contador<sizeof($colores))
	
blanco amarillo rojo verde azul marrón naranja violeta negro
blanco amarillo rojo verde azul marrón naranja violeta negro
blanco amarillo rojo verde azul marrón naranja violeta negro
Función In_Array evalúa si un valor está en la matriz

    $matriz94=array ('10.2',107,'texto','final');
	echo in_array("texto",$matriz94,true);
	echo in_array('107',$matriz94,true);
	
1
Función Array_replace reemplazar parte de los valores de una matriz

    $matriz=array(10, 20, 30);
	$matriz_reemplaza=array(0 => 40, 4 => 50);
	$matriz_resultado=array_replace($matriz,$matriz_reemplaza);
	print_r($matriz_resultado);
	
Array ( [0] => 40 [1] => 20 [2] => 30 [4] => 50 )
Funciones de orden para matrices

    $frutas128 = array("limón", "naranja", "banana", "albaricoque");
	$m1_ordenar=$frutas128;
	sort($m1_ordenar);
	//rsort   Orden reverse o inverso al orden normal de letras
	//asort   Orden manteniendo el indice del array inicial y ordena por valores ascendente
	//arsort  Ordena por el valor del indice asignado a cada item de la matriz
	foreach ($m1_ordenar as $clave => $valor) {
		echo nl2br("frutas[" . $clave . "] = " . $valor . "\n");
	}
    $m1=array('a1' => 'manzana', 'a2' =>'fresa', 'a3' => 'banana');
	$m1_orden_asc=$m1;
	sort($m1, SORT_REGULAR);
	print_r ($m1);
	
frutas[0] = albaricoque
frutas[1] = banana
frutas[2] = limón
frutas[3] = naranja
Array ( [0] => banana [1] => fresa [2] => manzana )
Función Explode sobre una matriz (separar elementos en matriz)

    $cadena152='matematicas, fisica, quimica, deporte, historia';
	$m153=explode (',',$cadena152);
	print_r ($m153);
	
Array ( [0] => matematicas [1] => fisica [2] => quimica [3] => deporte [4] => historia ) elementos 5
Función COUNT para conocer el contenido de una matriz

    $x183=array();
	echo "X está vacia: ".count($x183)."<br/>";
	$y185=array(1,2,3);
	echo "Y tiene elementos: ".count($y185)."<br/>";
	
X está vacia: 0
Y tiene elementos: 3
Función In_Array para conocer si tenemos el valor en la matriz

	$x216=array();
	$y218=array(1,2,3);
	$elemento202=2;
	$elemento_existe=in_array($elemento202,$x216);
	if($elemento_existe){
		echo "El elemento $elemento202 existe";
	}else{
		echo "El elemento $elemento202 no existe";
	}
	$elemento_existe=in_array($elemento202,$y218);
	if($elemento_existe){
		echo "El elemento $elemento202 existe matriz y216";
	}else{
		echo "El elemento $elemento202 no existe matriz y218";
	}
	
El elemento 2 no existe
El elemento 2 existe matriz y216
Función Array_Search busca en una matriz si el valor existe

	$clave=2;
	$x230=array();
	$y231=array('uno' => 1, 'dos' => 2, 'tres' => 3); // utilizar pares de valores para el buscar
	var_dump(array_search($clave,$x230));
	var_dump(array_search($clave,$y231));
	
bool(false) string(3) "dos"
Función Array_replace reemplaza parte del contenido de una matriz

	$matriz2=array(10, 20, 30); // en el replace si algún valor está fuera de matriz se agrega
	$matriz_reemplaza2=array(40, 50);  // podemos usar pares para asignar en la posición deseada 0 => 40, 4 => 50
	$matriz_resultado2=array_replace($matriz2,$matriz_reemplaza2);
	for ($i=0;$i<sizeof($matriz_resultado2);$i++):
		echo ($matriz_resultado2[$i]);
	endfor;
	print_r($matriz_resultado2);
	
405030Array ( [0] => 40 [1] => 50 [2] => 30 )
Función Explode separa de una cadena de texto los elementos separados por el que se indique

    $cadena292='matemáticas, física, química, historia, deporte';
	$matrizcadena292=explode (",",$cadena292); // explota todos los elementos separados por coma
	print_r ($matrizcadena292);
	$matrizcadena295=explode (",",$cadena292,3); // explota a matriz hasta tercera posición de la cadena que se asume como un solo valor
	foreach ($matrizcadena295 as $clave => $valor){
		echo $clave." ".$valor."<br/>";
	}
	print_r ($matrizcadena295);
	
Array ( [0] => matemáticas [1] => física [2] => química [3] => historia [4] => deporte )
0 matemáticas
1 física
2 química, historia, deporte
Array ( [0] => matemáticas [1] => física [2] => química, historia, deporte )
Función Implode realiza la tarea inversa a Explode, retorna los valores de la matriz en una cadena de texto

    $matriz314=array('lunes','martes','miércoles','jueves','viernes','sábado','domingo');
	$resultado314=implode("-",$matriz314);
	echo $resultado314;
	
lunes-martes-miércoles-jueves-viernes-sábado-domingo
Función Str_Split separa la cadena en bloques de caracteres en una matriz

    $cadena337='ABCDEFGH';
	$resultado337=str_split($cadena337,3); // separa la cadena en la cantidad de caracteres que se indican
	foreach($resultado337 as $clave => $valor){
		echo "$clave => $valor 
"; }
0 => ABC
1 => DEF
2 => GH
Función MIN para indicar el valor mínimo en una matriz

	echo "El valor mínimo es ".min([2*3,3**2,2+3]);  // si la matriz tiene texto se convierte en 0
	// las comparaciones de matrices se hacen por elementos contenidos o por longitud de la matriz
	echo "El valor máximo es ".max([2*3,3**2,2+3]);
	
El valor mínimo es 5
El valor máximo es 9
Funciones de índice de clave, conocer la primera y última

    $m373=array('a1' => 'manzana', 'a2' =>'fresa', 'a3' => 'banana');
	echo "La primera clave es ".array_key_first($m373);
	echo "La última clave es ".array_key_last($m373);
	
La primera clave es a1
La última clave es a3
Manipulando números ABS, ROUND, CEIL, FLOOR, Módulo %

	$n1=258;
	$n2=-159;
	echo "El valor absoluto del número es: ".abs($n1);
	echo "
El valor absoluto del número es: ".abs($n2); $n3=321.32; $n4=-789.56; echo "
El valor redondeo fracciones por techo del número es: ".ceil($n3); echo "
El valor redondeo fracciones por techo del número es: ".ceil($n4); echo "
El valor redondeo fraccionario por suelo del número es: ".floor($n3); echo "
El valor redondeo fraccionario por suelo del número es: ".floor($n4); echo "
El valor redondeado del número es: ".round($n3); echo "
El valor redondeado con 2 del número es: ".round($n3,2); echo "
El valor redondeado con -2 del número es: ".round($n3,-2); echo "
El valor redondeado del número es: ".round($n4); $dividendo=9; $divisor=4; $cociente=intdiv($dividendo,$divisor); $resto=($dividendo % $divisor); echo "
El cociente es ".$cociente; echo "
Cociente real ".($dividendo / $divisor); echo "
El resto será ".$resto;
El valor absoluto del número es: 258
El valor absoluto del número es: 159
El valor redondeo fracciones por techo del número es: 322
El valor redondeo fracciones por techo del número es: -789
El valor redondeo fraccionario por suelo del número es: 321
El valor redondeo fraccionario por suelo del número es: -790
El valor redondeado del número es: 321
El valor redondeado con 2 del número es: 321.32
El valor redondeado con -2 del número es: 300
El valor redondeado del número es: -790
El cociente es 2
Cociente real 2.25
El resto será 1
Trabajando con cadenas de texto

	$cadena425="Hola Mundo";
	echo "
La longitud de la cadena: ".strlen($cadena425); echo "
Cadena a minúsculas: ".strtolower($cadena425); echo "
Cadena a mayúsculas: ".strtoupper($cadena425); echo "
Capitaliza frase: ".ucfirst($cadena425); echo "
Capitaliza palabra: ".ucwords($cadena425); echo "
Texto parcial: ".substr($cadena425,5,3); echo "
Texto parcial: ".substr($cadena425,-3,2); $texto1="Pruebas de texto"; $texto2="pruebas de texto"; if (strcmp($texto1,$texto2)==0){ echo "
Las cadenas son iguales"; }else{ echo "
Las cadenas son diferentes"; }

La longitud de la cadena: 10
Cadena a minúsculas: hola mundo
Cadena a mayúsculas: HOLA MUNDO
Capitaliza frase: Hola Mundo
Capitaliza palabra: Hola Mundo
Texto parcial: Mun
Texto parcial: nd
Las cadenas son diferentes