使用Guzzle发送数据

时间:2016-02-09 13:41:24

标签: php guzzle

是否可以在Guzzle查询中包含if-else语句? E.g:

$client       = new Client();
$resp = $client->request('POST', $url, [
'form_params' => [
'foo' => 'bar',
'foo2' => 'bar2',
if ($_POST['fusroda'] == "rawww"){
'foo3' => 'bar3',
} else { 
//don't sent rent 
}
...
]
]);

显然这是不可能的。我还有其他选择吗?

ED:我考虑过做一个if-else语句,我在每个语句中都有一个完整的查询,但是我的代码将是1000行和非结构化的。

致以最诚挚的问候,

1 个答案:

答案 0 :(得分:0)

您可以做的是将负责准备数据的逻辑分离到单独的功能,以保持应用程序的每个部分仅承担单一责任。

可能是这样的:

function prepareParams($params)
{
    if ($params['fusroda'] == "rawww"){
        $params['foo3'] = 'bar3';
    }
    unset($params['fusroda'];

    ...    

    return $params; 
}

$resp = $client->request('POST', $url, [
'form_params' => $this->prepareParams($paramsBeforeEdit)
]);