gpt4 book ai didi

PHP如何有条件地分配类属性变量

转载 作者:可可西里 更新时间:2023-10-31 23:00:10 26 4
gpt4 key购买 nike

我是 PHP 类、数组等方面的新手,所以如果我使用的术语不正确,请原谅。我正在寻找的是如何轻松地将值分配给类中的属性,而不必依赖于“if”语句。

例如:

假设我有一个类 test 的实例,“test”有一个属性“employee”(希望这是正确的调用方式),employee 是一个复杂类型。

所以,我有类似的东西:

$test -> employee = array('Age' => '30', 'Sex' =>$sex, 'nationality'=>$nationality, 'maritalstatus'=>$status, etc, etc)

我这里的问题是,如果“年龄”、“性别”、“国籍”等并不总是存在,我只想给它们赋值当它们赋值时 ,而且我不想对非空值的每个组合使用 If ...(这是一个简短的例子,但我有很多这些属性或它们被调用的任何东西,太多的“if”组合太乱了)...

我稍后将这些值作为 soap 请求发送,我不想要任何空的 xml 标记...

如果我的术语不正确,我深表歉意,但我希望我已经足够清楚,以便有人帮助我!

提前致谢,巴勃罗

最佳答案

在这种情况下你可以做什么:

  • 使员工成为私有(private)属性
  • 定义一个需要提供所有参数的“setter”方法setEmployee

这是一些示例代码;试试这个:

    <?php

class test{

private $employee;

public function setEmployee($age,$sex,$nationality,$maritalstatus){
$this->employee=array('Age'=>$age,
'Sex'=>$sex,
'Nationality'=>$nationality,
'MaritalStatus'=>$maritalstatus);
}

public function getEmployee(){
return $this->employee;
}
}


$t=new test();
$t->setEmployee('32','M','American','Married');

print_r($t->getEmployee());
?>

关于PHP如何有条件地分配类属性变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2186727/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com