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

De WikiEducator
Saltar a: navegación, buscar
(Declaración y uso de las constantes)
(Declaración y uso de las constantes)
Línea 33: Línea 33:
 
  https://stackoverflow.com/questions/2447791/define-vs-const
 
  https://stackoverflow.com/questions/2447791/define-vs-const
 
*Las constantes, como toda expresión, también tienen tipo, que dependerá de su valor
 
*Las constantes, como toda expresión, también tienen tipo, que dependerá de su valor
 +
{{Nota|Para visualizar el valor de una constante en una cadena, hay que concatenarla, ya que el identificador no tiene ningún carácter especial, como es en el caso de las variables}}
 +
 
</div>
 
</div>
 
<div class="slide">
 
<div class="slide">
Línea 39: Línea 41:
 
{{plegable|hide|declarando constantes|
 
{{plegable|hide|declarando constantes|
 
<source lang=php>
 
<source lang=php>
{{Nota|Para visualizar el valor de una constante en una cadena, hay que concatenarla, ya que el identificador no tiene ningún carácter especial, como es en el caso de las variables}}
+
 
 
<?php
 
<?php
 
//Declaración de constantes de dos formas
 
//Declaración de constantes de dos formas

Revisión de 06:00 2 may 2023

Constantes



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

Declaración y uso de las constantes

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

(Comment.gif: Para visualizar el valor de una constante en una cadena, hay que concatenarla, ya que el identificador no tiene ningún carácter especial, como es en el caso de las variables)




Icon activity.jpg
Declarando constantes

Declarar dos constantes de diferente tipo y visualiza el tipo y el valor




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



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>