este script adaptado muestra 2 formas de pasar parámetros a un php scr IPT de un comando php exec: LLAMANDO SCRIPT
<?php
$fileName = '/var/www/ztest/helloworld.php 12';
$options = 'target=13';
exec ("/usr/bin/php -f {$fileName} {$options} > /var/www/ztest/log01.txt 2>&1 &");
echo "ended the calling script";
?>
LLAMADA SCRIPT
<?php
echo "argv params: ";
print_r($argv);
if ($argv[1]) {echo "got the size right, wilbur! argv element 1: ".$argv[1];}
?>
No se olvide de comprobar los permisos de ejecución y para crear un archivo log01.txt con permisos de escritura (el usuario apache por lo general será www-data).
RESULTADO
argv params: Array
(
[0] => /var/www/ztest/helloworld.php
[1] => 12
[2] => target=13
)
tiene el tamaño adecuado, el elemento wilburargv 1: 12
elegir cualquier solución que prefiera para Pasando tus parámetros, todo lo que tienes que hacer es acceder al argv arr ay recuperarlos en el orden en que se pasan (el nombre del archivo es el elemento 0).
TKS @hakre
¿Cuál es el parámetro -f para? – Hailwood
Esa es una especie de pregunta profunda, realmente. Si haces php --help desde la línea de comandos, dice esto: "-f Parse y ejecuta ." Pero dado que PHP lo hace de todos modos (sin invocar la opción -f), creo que es una buena pregunta: ¿para qué sirve? :) –
Tal vez es para personas con TOC que TIENEN que pasar una bandera;) – Hailwood