Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.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_Mysql_Joomla - Fatal编程技术网

Php 如果键相同,如何在数组中追加值

Php 如果键相同,如何在数组中追加值,php,mysql,joomla,Php,Mysql,Joomla,我有一个关联数组 [name]->user1, [class_code]->bsc, [name]->user2, [class_code]->msc, [name]->user1, [class_code]->mca 现在,我想要结果 [name]->user1, [class_code]->bsc, mca [name]->user2, [class_code]->msc 表示如果名称相同,则将类_代码附加到第一个。我该怎么做?

我有一个关联数组

[name]->user1,
[class_code]->bsc,
[name]->user2,
[class_code]->msc,
[name]->user1,
[class_code]->mca
现在,我想要结果

[name]->user1,
[class_code]->bsc,
mca
[name]->user2,
[class_code]->msc
表示如果名称相同,则将类_代码附加到第一个。我该怎么做? 我的数组是

 [1] =stdClass Object
        ([class_code] =Maths
            [userid] =365
            [avatar] =default.jpg
            [username] =user2
        )

    [2] =stdClass Object
        (
            [class_code] =Maths
            [userid] = 364
            [avatar] =default.jpg
            [username] =user1
        )

 [3] =stdClass Object
        (
            [class_code] =MCA
            [userid] =364
            [avatar] =default.jpg
            [username] =user1
        )

    [4] =stdClass Object
        (
            [class_code] =MCA
            [userid] =365
            [avatar] =default.jpg
            [username] =user2
        ) 
现在,在显示结果时,我想将for ex.user2的记录显示为

username:user2
avatar
classcode :MCA,Maths 
而不是

username:user2
avatar
classcode :MCA
username:user2
avatar
classcode :Maths 

我该怎么做呢?

同一个键不能有两个值。否则,如果您请求$myarray['name'],php将不知道该给您什么

您可以改为使用嵌套数组

乙二醇

或者你可以这样做

[user1]->bsc, mca
[user2]->msc

如果您想在其中同时拥有两个值,则应该考虑在其中使用一个数组

array(
   "name"=>"user1,
   "class_code"=>"array('mca','bsc'),
   "name"=>"user2,
   "class_code"=>"msc"
);

如果
[class\u code]
必须包含字符串,则可以尝试

$array[$key] .= $value;

您可以使整个阵列多维化:

$users = array(
   0 = array(
       "name"=>"user1",
       "class_code"=>"bsc"
   ),
   1 = array(
       "name"=>"user2",
       "class_code"=>"msc"
   )
);
检索值:

$users[1][name]              // Returns 'user2'
$users[0][class_code]        // Returns 'bsc'
通过值循环:

foreach($users as $user => $attributes) {
    echo "$user: $attributes[name] ($attributes[class_code])<br />";
}

/*
Prints:
    0: user1 (bsc)
    1: user2 (msc)
*/
foreach($user作为$user=>$attributes的用户){
echo“$user:$attributes[name]($attributes[class_code])
”; } /* 印刷品: 0:user1(bsc) 1:用户2(理学硕士) */
不同条目具有相同键的关联数组怎么可能存在?请发布阵列的
var\u导出
foreach($users as $user => $attributes) {
    echo "$user: $attributes[name] ($attributes[class_code])<br />";
}

/*
Prints:
    0: user1 (bsc)
    1: user2 (msc)
*/