pasar parametros a ejecutables #!

Edgard Pineda Leone. epineda en cec.uchile.cl
Lun Ago 9 13:00:16 CLT 2004


Creo que no me entendiste... el problema no es al programar en php es en
la llamada al ejecutable php en el #! de la primera linea. Doy otro
ejemplo:

Tengo un archivo ejecutable con lo siguiente:
#!/usr/bin/php -q
<?php
print "hola!!";
?>

y el resultado:

hola!!

todo bien, pero si en la línea #! pongo más parametros al php:
#!/usr/bin/php -c/home/proy/devel -q
<?php
print "hola!!";
?>

resulta:

X-Powered-By: PHP/4.1.2
Content-type: text/html

hola!!


Deja de funcionar los parámetros... lo que me pasa es que solo el primer
parametro pesca, y si pongo mas de uno ninguno funciona....
Incluso, si los pongo al reves:
#!/usr/bin/php -q -c/home/proy/devel
<?php
print "hola!!";
?>

al ejecutarlo me sale:
Error in argument 1, char 3: option not found
Error in argument 1, char 4: option not found -
Error in argument 1, char 3: option not found
Usage: php [-q] [-h] [-s [-v] [-i] [-f <file>] |  {<file> [args...]}
  -q             Quiet-mode.  Suppress HTTP Header output.
  -s             Display colour syntax highlighted source.
  -f <file>      Parse <file>.  Implies `-q'
  -v             Version number
  -C             Do not chdir to the script's directory
  -c <path>      Look for php.ini file in this directory
  -a             Run interactively
  -d foo[=bar]   Define INI entry foo with value 'bar'
  -e             Generate extended information for debugger/profiler
  -z <file>      Load Zend extension <file>.
  -l             Syntax check only (lint)
  -m             Show compiled in modules
  -i             PHP information
  -h             This help


:( snif

esta última llamada si la hago directamente desde la linea de comando si
funciona:
> /usr/bin/php -q -c /home/proy/devel prueba
hola!!

??

 On Mon, 9 Aug 2004, Ricardo Mun~oz A. wrote:

> El dom, 08-08-2004 a las 13:26, Edgard Pineda Leone. escribió:
> > Holas!
> >
> > Tengo el siguiente problema: quiero pasar parámetros de línea de comando a
> > php en un archivo script de la siguiente manera:
>
> [...]
>
> > alguien sabe como se hace este tipo de llamadas?? (seguramente debe ser
> > facil, pero no encuentro como hacerlo)
>
> apuesto a que no consultaste el Manual de PHP:
>
> http://cl.php.net/manual/es/features.commandline.php
>
> $argv[1] -> 1er parametro
> $argv[2] -> 2do parametro
> etc.
>
> pd. los manuales no muerden.
>
> --
> Ricardo Mun~oz A.
> Usuario Linux #182825 (counter.li.org)
>



Más información sobre la lista de distribución Linux