2012-01-22 636 views
13

Estoy tratando de construir una secuencia de comandos php para procesar los datos manualmente para luego convertirlos a un cronjob. este script también obtiene datos de mysql y soap de terceros. cuando trato de ejecutarlo desde la línea de comando, tengo un error y el script no se ejecuta.script de línea de comandos php no se ejecuta

muestra:

./test.php: line 1: ?php: No such file or directory 
Enter a number: 
./test.php: line 5: syntax error near unexpected token `(' 
./test.php: line 5: `$line = trim(fgets(STDIN));' 

Esto es lo que tengo en mi guión:

echo 'Enter a number:'; 
    $line = trim(fgets(STDIN)); 
    var_dump($line); 

sé funcionamiento de este comando, lo que está mal?

Respuesta

18

Obtiene este error porque ejecuta este script como ./script.php. Para asegurarse de que el script PHP comprenda y funcione correctamente, debe incluir este #!/usr/bin/php en la parte superior del script.

Ejemplo:

#!/usr/bin/php 
<?php 
echo 'Enter a number:'; 
$line = trim(fgets(STDIN)); 
var_dump($line); 

si PHP está instalado en la carpeta/usr/bin, si no, se puede comprobar mediante el comando locate php y luego usar el camino correcto.

o la otra alternativa será

php /path/to/script.php

Cuestiones relacionadas