最近,我发布了一个开源类 - 一个主要的SMS网关提供的API函数包装,它提供了一个HTTP-API访问来发送短信。
现在我想创建一个自定义命令行utitity,可以在命令行的任何地方为用户提供,这样他就可以通过运行这样的控制台命令来发送短信:
$ my_custom_send_sms_command -u your_username -p your_password -k your_api_key 447771234567 'Hello from CLI'
请解释一下如何做到这一点?
更新:
类是用PHP编写的。
答案 0 :(得分:0)
确保安装了PHP CLI包。在我的Ubuntu VPS上我必须运行:
$ apt-get install php5-cli
检查它是否已安装:
$ /usr/bin/php -v
然后,创建一个名为sendsms.php
的文件,内容与此类似:
#!/usr/bin/php -q
<?php
// command line parameters are in the format:
// key1 value1 .. keyN valueN number message
$username = "";
$password = "";
$apikey = "";
// process pairs of arguments up to the last two
for ($x = 0; $x < ($argc - 3); $x++)
{
if ($argv[$x] == "-u") $username = $argv[$x + 1];
if ($argv[$x] == "-p") $password = $argv[$x + 1];
if ($argv[$x] == "-k") $apikey = $argv[$x + 1];
}
$number = $argv[$argc - 2];
$message = $argv[$argc - 1];
// To do: call the SMS API
// For now just output the info
echo("Username = " . $username . "\r\n");
echo("Password = " . $password . "\r\n");
echo("API key = " . $apikey . "\r\n");
echo("Number = " . $number . "\r\n");
echo("Message = " . $message . "\r\n");
?>
确保该文件具有执行权限:
chmod 755 sendsms.php
然后从当前文件夹中运行它:
$ ./sendsms.php -u your_username -p your_password -k your_api_key 447771234567 'Hello from CLI'