Home  >  Article  >  php教程  >  linux shell里,输入en hello,返回你好,反之亦然。

linux shell里,输入en hello,返回你好,反之亦然。

PHP中文网
PHP中文网Original
2016-05-25 17:05:231543browse

命令行版本的中英互译,调用了百度翻译API。

$en how are you
how -> 怎么用
are -> 是
you -> 你
$en "how are you"
how are you -> 好好学习,天天向上
$en 好好学习,天天向上
好好学习,天天向上 -> Study hard and make progress every day

需要php-cli支持:

sudo yum install php-cli

需要赋予执行权限:

chmod a+x en

#!/bin/php
<?php
$url = &#39;http://openapi.baidu.com/public/2.0/bmt/translate?client_id=T8Qlsxu4VmLt6qWbqqjtMdLo&q=&#39;;
isset($argv[1]) or die(&#39;至少指定一个词作为参数&#39;.PHP_EOL);
$q = $argv;
array_shift($q);
foreach($q as $k=>$v){
 $q[$k]= urlencode($v);
}
$json = file_get_contents($url.implode(&#39;%0A&#39;,$q));
$arr=json_decode($json,true);
$arr = $arr[&#39;trans_result&#39;];
foreach ($arr as $key) {
 $cmd=&#39;echo -ne"e[44;37;5m &#39;.$key[&#39;dst&#39;].&#39; 33[0m"&#39;;
 echo"${key[&#39;src&#39;]} ->".exec($cmd);
 echo PHP_EOL;
}
?>
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn