在效率方面哪个更好:
- 有很多参数的方法
- 包含所有提到的参数的批量参数
我的意思是:
public function addToDb($firstName, $lastName, $phone, $address, ...)
{
或者
public function addToDb(Request $request)
{
$firstName = $request->firstName;
$lastName= $request->lastName;
$phone= $request->phone;
$address= $request->address;
//
请记住,在此示例中,$request
类可能有许多无用的参数和方法。
最佳答案
第二种方法更优先。例如你定义
function addToDb($firstName, $lastName, $phone, $address){...}
并使用此方法例如 10 次。如果将来您的应用需要更改并且您必须更改某些参数,例如 $firstName, $lastName,
必须更改为 name
,那么您必须更改你的初始功能
function addToDb($name, $phone, $address){...}
并且调用此方法的 int 10 次你也必须更改。但是在几秒钟内你必须像这样只改变函数体
public function addToDb(Request $request)
{
$name = $request->firstName . '' . $request->lastName;
也可以使用三阶结构
function someFunction(...) {
$parameterWithData = [
'firstName' => 'firt name',
'lastName' => 'last name'
.....
];
$this->test($parameterWithData);
}
function test($parameterWithData)
{
extract($parameterWithData);
dd($firstName, $lastName); // must be print `first_name, last name`
}
在extract
函数中,您可以将所有键用作变量
http://php.net/manual/en/function.extract.php
关于php - 许多方法参数与批量参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53740477/