Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/apache-flex/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 大口大口地发送数据_Php_Guzzle - Fatal编程技术网

Php 大口大口地发送数据

Php 大口大口地发送数据,php,guzzle,Php,Guzzle,Guzzle查询中是否可能包含if-else语句?例如: $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

Guzzle查询中是否可能包含if-else语句?例如:

$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 
}
...
]
]);
显然这是不可能的。我还有其他选择吗

埃德:我曾考虑过做一个if-else语句,在其中每个语句中放入一个完整的查询,但我的代码将是1000行的非结构化代码


最重要的是,

您可以做的是将负责准备数据的逻辑分离到单独的函数中,使应用程序的每个部分只承担一项责任

可能是这样的:

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)
]);

您可以做的是将负责准备数据的逻辑分离到单独的函数中,使应用程序的每个部分只承担一个职责

可能是这样的:

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)
]);

感谢您抽出时间回复@acabala。这是一个很好的建议,但我不太符合我的需要。正如我提到的,我有一个场景,其中有许多变量需要考虑。所以如果我需要在prepareParams中包含if-else语句,我需要有很多。。。然后我需要10-15个if-else语句。有没有更简单、更有条理的方法可以做到这一点?我也不太理解你的功能。变量$paramsbeforedit是什么?它从何而来?
$paramsBeforeEdit
都是你想设置为form_params的参数,所以一个数组:'foo'=>'bar','foo2'=>'bar2',['fusroda']=>“rawwww”你已经有了它。你能给出一个更全面的例子吗?谢谢你花时间回复@acabala。这是一个很好的建议,但我不太符合我的需要。正如我提到的,我有一个场景,其中有许多变量需要考虑。所以如果我需要在prepareParams中包含if-else语句,我需要有很多。。。然后我需要10-15个if-else语句。有没有更简单、更有条理的方法可以做到这一点?我也不太理解你的功能。变量$paramsbeforedit是什么?它从何而来?
$paramsBeforeEdit
都是您想要设置为form_params的参数,所以一个数组:'foo'=>'bar','foo2'=>'bar2',['fusroda']=>“rawwww”您已经有了它。您能给出一个更全面的例子吗?