php连接数组的两个元素

标签 php arrays string algorithm multidimensional-array

我有这个数组

$MyArray[0]=Array("id"=>1,"name"=>prophet,"family"=>muhammad);
$MyArray[1]=Array("id"=>1,"name"=>imam,"family"=>ali);
$MyArray[2]=Array("id"=>1,"name"=>imam,"family"=>hossein);

我只想将 namefamily 合并到 fullName 吗?

我想要这样

$MyArray[0]=Array("id"=>1,"name"=>prophet,"family"=>muhammad,"fullName"=>"prophet muhammad");
$MyArray[1]=Array("id"=>1,"name"=>imam,"family"=>ali,"fullName"=>"imam ali");
$MyArray[2]=Array("id"=>1,"name"=>imam,"family"=>hossein,"fullName"=>"imam hossein");

我可以用这段代码来做

$count=0;
foreach($MyArray as $R)
{            
    $result[$count++]=array("name"=>$R["name"],"family"=>$R["family"],"fullName"=>$R["name"]." ".$R["family"]);
}
var_dump($result);

Online Demo

有更好的方法吗?

最佳答案

只需在您当前的数组结构中分配一个新的 key 对值。一个简单的 foreach 就足够了:

$MyArray[0]=Array("id"=>1,"name"=>"prophet","family"=>"muhammad");
$MyArray[1]=Array("id"=>1,"name"=>"imam","family"=>"ali");
$MyArray[2]=Array("id"=>1,"name"=>"imam","family"=>"hossein");

foreach($MyArray as &$arr) {
                  // ^ reference
    $arr['fullName'] = "{$arr['name']} {$arr['family']}";
    //   ^ new key       ^ new value assignment
}

Sample Output

关于php连接数组的两个元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29506034/

相关文章:

php - 如何在注册时自动为用户分配子域

php - 如果为 NULL,则验证 mysql 查询

javascript - 否则无法在 JavaScript 中工作

arrays - 如何将参数从批处理文件传递到perl中的数组?

java - 验证字符串为空或 null 的最佳方法

javascript - 无法获取url参数

c - 在c中根据另一个数组按升序对一个数组进行排序

php - 如何正确使用数组

java - 拆分字符串 - 笛卡尔方式

python - 如何去掉第一个和最后一个双引号?