Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/09/2017, 11:57
alvaro_trewhela
Invitado
 
Mensajes: n/a
Puntos:
Respuesta: crear fucnion a partir de un codigo

No entiendo esto:

$region = strip_tags ($_POST['region']);
$lugar = "$region";
if($lugar = $region) {
}


Para que el strip? si $region es un entero?
Para que $lugar = $region //que es lo mismo que $lugar = "$region" (si es un string)

Cuando haces esto if($lugar = $region) estas asignando y no comparando:
if($lugar == $region)

Pero no entiendo, $lugar siempre es igual a $region....

Que pasaria si pongo en el parametro otra region que no esta en los ifs?

Yo haría algo como esto:

Código PHP:
Ver original
  1. function transporte($region,$default){
  2. $valores = array(100,100,100,100,900,1100,1300,1500,1700,1900,2100,2300,2700); //arreglo de valores por regiones...
  3.  
  4. if($region == null || $region < 0 || $region >= sizeof($valores)){
  5. $valor = $default;
  6. }
  7. else{
  8. $valor = $valores[$region-1];
  9. }
  10.  
  11. $transporte = ; //aca tu formula, ya tienes $valor =)
  12.  
  13. return $transporte;
  14. }

Entonces lo que hice fue, pasar por parametro dos cosas, la region y un valor default, explicacion:

Ya que como tu deseas una funcion con parametro region, y en tus ifs solo atiendes solo unas opciones, supongo que debe haber un valor por defecto. y ese sería el parametro default, ahora para las regiones que no etiendes, y no quieres atenderlas, simplemente en el parametro region, pone null

Saludos