首頁  >  問答  >  主體

修改數組中的特定值

我有一個數組,資料是從 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粉253800312251 天前427

全部回覆(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
  • 取消回覆