搜索

首页  >  问答  >  正文

修改数组中的特定值

我有一个数组,数据是从 SQL 查询中获取的。该数组保存在名为 $users 的变量中。看:

<?php
    
    ...

    $data = array();
    $data['users'] = $users;
    $data['status']= true;
    $this->format_json($data);
    
?>

这是我得到的结果:

{
    "users":[
        {
            "id":"1",
            "name":"Joana",
            "avatar":"uploads/avatar/0eff31cdfa4d2b32c49e97dec010cc31_thumb.png"
        }
    ],
    "status":true
}

我想知道如何在“头像”开头添加链接,例如:

{
    "users":[
        {
            "id":"1",
            "name":"Joana",
            "avatar":"https://sitename.com/uploads/avatar/0eff31cdfa4d2b32c49e97dec010cc31_thumb.png"
        }
    ],
    "status":true
}

我尝试了 foreach,但我不知道在这种情况下如何正确使用它。我不知道如何重写上面提到的 $users 数组。

谢谢大家!


编辑

问题是这样解决的:

foreach ($users as $key => $entry) {
    $users[$key]->avatar = "https://sitename.com/" . $entry->avatar;
}
$data = array();
$data['users'] = $users;
$data['status']= true;
$this->format_json($data);

P粉253800312P粉253800312318 天前475

全部回复(1)我来回复

  • P粉297434909

    P粉2974349092024-01-17 15:37:35

    您可以使用foreach循环遍历用户数组。 $value 之前的 & 运算符将允许您直接修改数组项,而无需索引。

    foreach ( $data['users'] as &$value ) {
      $value['avatar'] = 'https://sitename.com/' . $value['avatar'];
    }

    回复
    0
  • 取消回复