PHP - 变量处理并返回一个值

时间:2016-03-22 08:51:44

标签: php

我需要通过一些验证来处理变量,以返回我稍后可以在我的脚本中使用的值。我的$ var来自GET。

示例:变量可能如下所示。

$var = 'main server app1 stop'

我需要按如下方式拆分字符串。

main server需要查找如下所示的列表并返回IP地址。

192.168.10.1 = 'main server' 
192.168.10.2 = 'backup server'

app1也需要在列表中查找并返回匹配。

service httpd = 'app1' 
service iptables = 'app2'

然后将相关的比赛带回来。在这个例子中,我希望返回以下内容。

192.168.10.1 service httpd stop

我希望我已经足够清楚地解释了这一点。如果没有告诉我需要详细说明的内容。

谢谢!

2 个答案:

答案 0 :(得分:1)

请,请阅读更多关于explode()和PHP中的数组的信息,但这里是奶酪:

$var = 'main server app1 stop';

$server = array(
    'main server'   => '192.168.10.1',
    'backup server' => '192.168.10.2',
);

$service = array(
    'app1' => 'service httpd',
    'app2' => 'service iptables',
);

$arr = explode(' ', $var);

echo $server["$arr[0] $arr[1]"] . ' ' . $service[$arr[2]] . ' ' . $arr[3];

输出:

192.168.10.1 service httpd stop

答案 1 :(得分:0)

我建议做以下

$server = (strpos($var,'main') !== false) ? '192.168.10.1' 
                                          : '192.168.10.2' ;

$service = (strpos($var,'app1') !== false) ? 'httpd' : 'iptables';
$output = $server . ' service ' . $service . ' stop';