PHP Laravel将数组值转换为大写

Ant*_*les 4 php laravel laravel-5 laravel-5.2 laravel-5.3

我的Laravel项目中有一个具有倍数值的数组:

array:1434 [?
  0 => array:53 [?
    "contact" => "ANA (dependienta)"
    "mail" => "example@mail.com"
    "phone2" => ""
    "phone3" => ""
    "web" => "0"
    "active" => true
    "province" => "Zaragoza"

  ]
  1 => array:53 [?
    "contact" => "JACKELINE * VIVIANA"
    "mail" => "mail@example.com"
    "phone2" => ""
    "phone3" => ""
    "web" => "0"
    "active" => true
    "province" => "Barcelona"

  ]
Run Code Online (Sandbox Code Playgroud)

我只想将省值转换为大写,我想得到以下结果:

array:1434 [?
  0 => array:53 [?
    "contact" => "ANA (dependienta)"
    "mail" => "example@mail.com"
    "phone2" => ""
    "phone3" => ""
    "web" => "0"
    "active" => true
    "province" => "ZARAGOZA"

  ]
  1 => array:53 [?
    "contact" => "JACKELINE * VIVIANA"
    "mail" => "mail@example.com"
    "phone2" => ""
    "phone3" => ""
    "web" => "0"
    "active" => true
    "province" => "BARCELONA"

  ]
Run Code Online (Sandbox Code Playgroud)

是否存在任何使用Laravel Collection或其他替代方法做到这一点的方法或方式?

Ale*_*nin 6

如果您正在使用Eloquent从数据库获取数据,则可以创建一个访问器

public function getProvince($value)
{
    return strtoupper($value);
}
Run Code Online (Sandbox Code Playgroud)

如果没有,您可以手动更改它:

for ($i = 0; $i < count($data); $i++) {
    $data[$i]['province'] = strtoupper($data[$i]['province']);
}
Run Code Online (Sandbox Code Playgroud)