Diferencia entre revisiones de «Plantilla:PHP/Declaraciones/Constantes»

De WikiEducator
Saltar a: navegación, buscar
(Constantes)
(Constantes)
Línea 67: Línea 67:
  
 
const IVA_REDUCIDO =0.10;
 
const IVA_REDUCIDO =0.10;
define (IVA_GENERAL ,0.21);
+
define ("IVA_GENERAL" ,0.21);
  
 
echo "<h2>Compra realizada en fecha ".date()."</h2>";
 
echo "<h2>Compra realizada en fecha ".date()."</h2>";
Línea 80: Línea 80:
 
-->
 
-->
 
}}
 
}}
 +
}}
 +
;la función '''''define()''''' admite un tercer parámetro que le hace insensible a mayúscula-minúscula.
 +
;Observa el siguiente código e interpreta las salida
 +
<source lang=php>
 +
 +
//Genera un warning, y funciona
 +
define (SALUDO1 , "HOLA");
 +
echo "valor de saludo " . SALUDO1."<br />";
 +
 +
 +
define ("SALUDO2" , "OTRO HOLA");
 +
echo "valor de saludo " . SALUDO2."<br />";
 +
 +
 +
define ("SALUDO3" , "OTRO HOLA de nivel 3");
 +
//imprime la palabra saludo3
 +
echo "valor de saludo " . saludo3."<br />";
 +
 +
define ("SALUDO3" , "OTRO HOLA de nivel 3", true);
 +
//imprime el valor
 +
echo "valor de saludo " . saludo3."<br />";
 +
 +
 +
define ("saludo4" , "OTRO HOLA nivel 4");
 +
//imprime la palabra SALUDO4
 +
echo "valor de saludo " . SALUDO4."<br />";
 +
 +
define ("saludo4" , "OTRO HOLA nivel 4", true);
 +
//imprime la palabra saludo4
 +
echo "valor de saludo " . SALUDO4."<br />";
 +
</source>
 +
 +
  
 
</div>
 
</div>

Revisión de 20:19 30 sep 2019

Constantes



Icon objectives.jpg
Objetivo
Las constantes se declaran una vez
No se pueden modificar, solo usar

Constantes

  • Se definen con la función define()
  • O con la palabra reservada const
define("IVA",0.21);
const IVA_BASE 0.06
.....
 
$total=$base*(1+IVA);
$total=$base_2*(1+IVA_BASE);
identificador
  • Se usa el mismo criterio de construcción pero no empieza por $
  • Se pueden definir y utilizar en cualquier momento que se necesiten.
  • Para saber si una constante está definida defined()
  • Para muchos casos puedo usar igualmente const y define
  • Sin embargo hay una serie de diferencias que en algún caso pueden ser importantes
  • Revisa la siguiente entrada
https://stackoverflow.com/questions/2447791/define-vs-const
  • Las constantes, como toda expresión, también tienen tipo, que dependerá de su valor


Icon activity.jpg

Declarando constantes

{{{1}}}




Icon activity.jpg

Declarando constantes

  • Haz un programa donde tenga declarado IVA_GENERAL e IVA_REDUCIDO
  • El tipo de IVA es 21% y 10% respectivamente
  • Informa de una factura donde se han comprado:
    • 3 barras de pan a 0.80 mas iva reducido
    • 5 bombillas a 5.4 mas iva general
  • Muestra importe base, iva e importe total
  • informa también del iva aplicado

<plegable



}}

la función define() admite un tercer parámetro que le hace insensible a mayúscula-minúscula.
Observa el siguiente código e interpreta las salida
//Genera un warning, y funciona
define (SALUDO1 , "HOLA");
echo "valor de saludo " . SALUDO1."<br />";
 
 
define ("SALUDO2" , "OTRO HOLA");
echo "valor de saludo " . SALUDO2."<br />";
 
 
define ("SALUDO3" , "OTRO HOLA de nivel 3");
//imprime la palabra saludo3
echo "valor de saludo " . saludo3."<br />";
 
define ("SALUDO3" , "OTRO HOLA de nivel 3", true);
//imprime el valor
echo "valor de saludo " . saludo3."<br />";
 
 
define ("saludo4" , "OTRO HOLA nivel 4");
//imprime la palabra SALUDO4
echo "valor de saludo " . SALUDO4."<br />";
 
define ("saludo4" , "OTRO HOLA nivel 4", true);
//imprime la palabra saludo4 
echo "valor de saludo " . SALUDO4."<br />";


Constantes predefinidas

  • Como en otros lenguajes, existen una serie de constantes predefinidas
  • Nos las ofrece el entorno y dependerán de él para su valor
  • PHP Ofrece un gran número de constantes predefinidas http://php.net/manual/es/reserved.constants.php
  • En php hay 8 constantes que su valor puede cambiar dependiendo del entorno donde se ejecutan
constantes predefinidas en php

</div>