2012-12-07 190 views
19

我有一个名为address.php的文件,其中包含一些函数。我想从命令行调用该文件中的特定功能,怎么样?该函数的名称称为exportAddress,该函数需要单个参数从命令行调用php函数

回答

41

通过使用-r参数,您可以在线运行脚本。

php -r "require 'address.php'; exportAddress(12345);"

有没有其他的选择。 PHP中的函数只能由PHP脚本调用。

+0

PHP --run“需要 'address.php'; exportAddress(12345);“这很容易记住从CLI调用 – Tarik

1

php -r'include“/var/www/test/address.php";exportAddress(1);'

其中"/var/www/test/arr.php"是包括路径和exportAddress()文件名是函数文件中

3

这个添加到文件“/var/www/test/address.php”顶部...

foreach ($argv as $i=>$arg) 
{ 
    if ($arg == "exportAddress") 
    { 
     exportAddress($argv[$i+1]); 
    } 
} 

然后在命令行中执行#> PHP /var/www/test/address.php exportAddress 12345

1

你可以让你的文件 “somefile.php” 安排如下:

function func1(){....} 
function func2(){....} 
function func3(){....} 
.... 
foreach ($argv AS $arg){ 
    function_exists($arg) AND call_user_func($arg); 
} 
命令行或Linux的cronjob

然后,运行以下命令

php /path/to/somefile.php arg1 arg2 arg3 ...