Inicio
Software
Programación
HTML Programación - PHP (ini) Programación - PHP POO Programación - PHP / HTML SQL Java
Hardware
Desarrollos
Quién soy Mapa del sitio

PHP - 4ta Entrega operadores

Imprimir
Categoría: PHP
Escrito por Ch4rl1X Visitas: 2131

El operador básicamente permite manipular nuestros valores en el código y producir otros.

Los operadores tienen precedencia, esto quiere decir que uno puede valer más que otro de acuerdo como se presente la operación.

Link a explicación php.es.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores Precedencia</title>
</head>

<?php

$suma = 2 + 1 * 3;

echo $suma;

?>

<body>
</body>
</html>

Resultado -> Click aquí

En el anterior se muestra como en una suma simple puede verse afectada el valor de acuerdo a su precedencia.

Operadores de asignación. 

Link a explicación php.es.

El operador básico es "=".

Significa que un valor se crea con el valor del que esté a la derecha, no que es igual.

Veamoslo con un ejemplo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de asignacion</title>
</head>

<?php

$a = ($b = 2)+ 3;

echo $b."<br>";
echo $a."<br>";

$arrayCreado = array( 1 => AlgunValor, 2 => 2, 3 =>3);

echo $arrayCreado[1]."<br>";

$c = "Esto";
$c .= " es ";
$c .= "una ";
$c .= " frase.";

echo $c;

?>

<body>
</body>
</html>

Resultado -> Click Aquí.

Operadores bit a bit, dejo el enlace en éste mismo texto porque me no me parece relevante mostrar ejemplos.

Igualdad: Ya que con éstos siempre trae TRUE veamos algunos ejemplos:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de comparacion</title>
</head>
<body>

<form action="operadoresComparacionIgualdad.php" method="POST">
<p>Vamos con comparando con "=" </p>
<fieldset>
<legend>Ingresá Australopitecus para validar el formulario</legend>
<p font="small">Record&aacute; las may&uacute;sculas y min&uacute;sculas:</p>
<input type="text" id="aust" name="aust" value=""/>
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo "<p>Juguemos un poco:</p>";
echo "<p>Para, el siguiente el valor correcto es: Australopitecus :) </p>";


if($_POST['aust'] == 'Australopitecus')         
		 {
         echo '<p>'.'Correcto! Colocaste -->'.$_POST['aust'].'</p>'; 
         }
		 else
		 {
          echo '<p><font color="red"><strong>No has colocado valor o es incorrecto.</strong></font><p>';
	     }
?>

</body>
</html>

Resultado -> Click Aquí.

Mismo Tipo:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de comparacion igualdad</title>
</head>
<body>

<form action="operadoresComparacionMismoTipo.php" method="POST">
<p>Comparando tipos "===" </p>
<fieldset>
<legend>Ingresá los valores para verificar su contenido</legend>
<p font="small">Record&aacute; las may&uacute;sculas y min&uacute;sculas:</p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<br /><br />
<input type="text" id="tipo2" name="tipo2" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo "<p>Juguemos un poco:</p>";
echo "<p>Podemos comprobar si los valores son del mismo tipo colocando valores en el formulario:  </p>";


if($_POST['tipo1'] === $_POST['tipo2'])         
		 {
         echo '<p>'.'Correcto, los valores son del mismo!</p>'; 
         }
		 else
		 {
          echo '<p>No has colocado valor o es incorrecto.<p>';
	     }
?>

</body>
</html>

Con el anterior comprobamos si los datos son del mismo tipo, podríamos validar:

Textos iguales, números iguales, pero la verdadera prueba está en comparar por ejemplo un texto y algún número :).

Resultado -> Click Aquí.

Diferentes:

Aquí se comparan las diferencias en los valores, si es diferente va a validar.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de comparacion diferente</title>
</head>
<body>

<form action="operadoresComparacionDiferentes.php" method="POST">
<p>Comparando los valores diferentes</p>
<fieldset>
<legend>Aquí vamos a comparar la diferencia.</legend>
<p font="small">Record&aacute; las may&uacute;sculas y min&uacute;sculas:</p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<br /><br />
<input type="text" id="tipo2" name="tipo2" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo "<p>Juguemos un poco:</p>";
echo "<p>Aquí la respuesta va a ser TRUE/VERDADERA cuando los valores sean de distinto tipoo distintos:  </p>";


if($_POST['tipo1'] != $_POST['tipo2'])         
		 {
         echo '<p>'.'Perfecto los valores son diferentes en ambos campos!</p>'; 
         }
		 else
		 {
          echo '<p>No has colocado valor o es incorrecto.<p>';
	     }
?>

</body>
</html>

Resultado -> Click Aquí.

No idéntico: Aquí comparamos los valore no idénticos... si es TRUE valida. Se podría crear código que compare por ejemplo los archivos que existen, si NO existe alguno con el nombre del que se está subiendo valida y permite subir el archivo. No es el caso del siguiente... seguimos con Text Input.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de comparacion no identico</title>
</head>
<body>

<form action="operadoresComparacionNoIdentico.php" method="POST">
<p>Comparando los valores NO identicos</p>
<fieldset>
<legend>Valida s&oacute;lo si NO son id&eacute;nticos los valores.</legend>
<p font="small">Record&aacute; las may&uacute;sculas y min&uacute;sculas:</p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<br /><br />
<input type="text" id="tipo2" name="tipo2" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo "<p>Juguemos un poco:</p>";
echo "<p>Aquí la respuesta va a ser TRUE/VERDADERA cuando los valores NO sean identicos distintos:  </p>";


if($_POST['tipo1'] !== $_POST['tipo2'])         
		 {
         echo '<p>'.'Perfecto los valores no son idénticos podés continuar!</p>'; 
         }
		 else
		 {
          echo '<p>No has colocado valor o es incorrecto.<p>';
	     }
?>

</body>
</html>

Seguimos con el mismo esquema Text Input... formulario que cae al mismo archivo y a validar.

Resultado -> Click aquí.

Menor que:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de comparacion menor que</title>
</head>
<body>

<form action="operadoresComparacionMenorQue.php" method="POST">
<p>Aquí verificamos si el valor es menor que:</p>
<fieldset>
<legend>Valida con los siguientes campos</legend>
<p font="small">Record&aacute; las may&uacute;sculas y min&uacute;sculas:</p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<br /><br />
<input type="text" id="tipo2" name="tipo2" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo "<p>Juguemos un poco:</p>";
echo "<p>El primer valor es de referencia si el segundo es mayor va a validar:  </p>";


if($_POST['tipo1'] < $_POST['tipo2'])         
		 {
         echo '<p>'.'Perfecto!, muy bien es mayor aunque sea string o símbolo</p>'; 
         }
		 else
		 {
          echo '<p>No has colocado valor o es incorrecto.<p>';
	     }
?>

</body>
</html>

Resultado -> Click aquí.

Para el mayor no lo hago, ya que es el mismo código pero con el signo diferente :).

Menor o igual.

 En el siguiente seguimos utilizando el mismo Script, que si sos un poco lento como yo para comprender como funciona el asunto, te recomiendo que lo escribas (teclear) desde 0 siempre, tomate ésto como regla y te va a ser simple comprender hasta el más complejo de los códigos :).

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores de comparacion menor o igual</title>
</head>
<body>

<form action="operadoresComparacionMenorOIgual.php" method="POST">
<p>Aquí verificamos si el valor es menor o igual que:</p>
<fieldset>
<legend>Valida con los siguientes campos</legend>
<p font="small">Record&aacute; las may&uacute;sculas y min&uacute;sculas:</p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<br /><br />
<input type="text" id="tipo2" name="tipo2" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo "<p>Juguemos un poco:</p>";
echo "<p>El primer valor es de referencia si el segundo es mayor o igual va a validar:  </p>";


if($_POST['tipo1'] <= $_POST['tipo2'])         
		 {
         echo '<p>'.'Perfecto!, muy bien es mayor aunque sea string o símbolo</p>'; 
         }
		 else
		 {
          echo '<p>No has colocado valor o es incorrecto.<p>';
	     }
?>

</body>
</html>

Resultado -> Click Aquí.

Como venimos viendo, sólo se cambia el operador de comparación sobre el código y los mensajes de ejemplo.

Operadores incremento / decremento.

Te permite sumarle/restarle al valor anterior 1.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores incremento</title>
</head>
<body>

<form action="incrementoDecremento.php" method="POST">
<p>Operador de incremento:</p>
<fieldset>
<legend>Validate el incremento</legend>
<p>Nuesto valor de inicio va a ser 1, desde allí hasta 100 le decimos que cuente.</p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

echo 'Con esto nuestro código contaría hasta el valor que le digamos mostrando el valor de nuestras valores generados sucesivamente '.'<br>';

if($_POST['tipo1'] < 100)
    {
foreach(range(1, $_POST['tipo1']) as $contar)

echo $contar." ";
	}
	else
    {
		echo 'Eppa, el valor no puede ser superior o igual a 100 :)...';
	}


/*
if(++$_POST['tipo1'])
    {
		echo $_POST['tipo1'];
	}
/*

?>

</body>
</html>

Resultado -> Click Aquí.

Como después de ver que era posible contar hasta cualquier número le tuve que poner una condición a la variable que caía porque generaba error si se le ponía 10000 por ejemplo. Aquí  aplicamos algo de lo ya visto, si te hiciste los tutoriales anteriores más precisamente el anterior el búcle foreach con la función preconstruida range no te va a sorprender :).

Operadores lógicos:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores incremento</title>
</head>
<body>

<form action="operadoresLogicos.php" method="POST">
<p>Operador de incremento:</p>
<fieldset>
<legend>Validate el incremento</legend>
<p>Aquí le decimos a PHP que nos valide si colocamos los dos valores en los campos. </p>
<input type="text" id="tipo1" name="tipo1" value=""/>
<input type="text" id="tipo2" name="tipo2" value=""/>
<br /><br />
<input type="submit" value="verificar"/>
<input type="reset" value="Limpiar" />
</fieldset>
</form>

<?php

if ($_POST['tipo1'] and $_POST['tipo2'])
      {
		  echo "<br />Perfecto colocaste ".$_POST['tipo1']." en el primer campo Y ".$_POST['tipo2']." para el segundo. ";
	  }
	  else
	  {
		  echo "<br />No colocaste valores en ninguno de los campos.";
	  }

?>

</body>
</html>

Resultado -> Click Aquí.

Muy usados la mayoría de las veces en casos como el ejemplo anterior.

Operadores para los strings.

Se trata de la concatenación, que ya venimos usando en la mayoría de los ejemplos anteriores:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores para concatenar</title>
</head>
<body>

<?php

$var1 = "Hola";

$var2 = $var1." a todos.";

echo $var2;

?>
</body>
</html>

Resultado -> Click Aquí.

La diferencia del anterior es que al de concatenación se le pude agregar un argumento, que siempre va a estar del lado de la derecha (como vimos al inicio del post).

Operadores para los arrays:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Operadores para los Arrays</title>
</head>
<body>

<?php

$array1 = array( "a" => "marron", "b" => "celeste");
$array2 = array("a" => "marron", "b" => "celeste");

if($array1 == $array2)
     {
		 echo "Los arrays son iguales.".'<br><br>';
	 }

$array3 = array("a" => "marron", "b" => "celeste");
$array4 = array("a" =>"marron", "c" => "gris");

if($array3 === $array4)
     {
		 echo "Los array son iguales.";
	 }
	 else
	 {
         echo "Los arrays no son iguales"; 
	 }
?>

</body>
</html>

Y hasta acá con la muestra de operadores.

Accedan a la lista completa de operadores disponibles haciendo click en éste texto.

Saludos, Ch4rl1X!