2010-01-06 44 views
6

Estoy intentando escribir una función en un controlador CodeIgniter que puede tomar parámetros opcionales. Sin embargo, siempre recibo advertencias de Argumento Perdido. No estoy tratando de suprimir las advertencias. Estoy tratando de declarar los parámetros como opcionales (tal vez podrían ser cadenas vacías si no existen, o algo así).parámetros opcionales en CodeIgniter

¿Qué es lo que me falta?

Gracias
Mala

Respuesta

19
public function my_optional_test($not_optional_param, $optional_param = NULL) 
    { $this->stuff(); } 

Has probado esto?

+1

Gracias compañero :-) – Mala

+4

nota de que esto no es en CodeIgniter pero a lo largo de php en el caso de que se preguntan –

0

Por ejemplo, digamos que usted tiene un URI como esta:

  1. example.com/index.php/mycontroller/myfunction/hello/world
  2. example.com/index.php/mycontroller/ myFunction/hola

será pasado Su método segmentos URI 3 y 4 (“Hola” y “mundo”):

myController clase extiende CI_Controller {

public function myFunction($notOptional, $optional = NULL) 
{ 
    echo $notOptional; // will return 'hello'. 
    echo $optional; // will return 'world' using the 1st URI and 'NULL' using the 2nd. 
} 

}

Referencia: https://codeigniter.com/user_guide/general/controllers.html

Cuestiones relacionadas