Laravel:转换任何具有空的数组的值

发布于 2025-02-11 02:10:17 字数 911 浏览 1 评论 0原文

我的数组从数据库中获取:

public function get_orders($phone)
{
    $customer = User::where('phone',$phone)->get();
    $c_id = $customer[0]->id;
    $orders = Order::where('cusID',$c_id)->orderBy('id','DESC')->get();
}

我获取此列表:

[
    {
        "id": 5375,
        "cusID": 1015,
        "websiteID": null,
        "brandID": 8052
    },
    {
        "id": 5378,
        "cusID": 1015,
        "websiteID": 1,
        "brandID": null
     }

现在如何将所有NULL值转换为一个空字符串一次?

我尝试了这个,但不工作

foreach ($orders as $order) {
    foreach ($order as $key => $value) {
        if (is_null($value)) {
             $order[$key] = "";
        }
    }
  return $orders;
 }

,我也尝试过,但不能起作用:

array_map(function($v){
                return ($v === null) ? "" : $v;
              }, $order->toArray());

I have array gets from database :

public function get_orders($phone)
{
    $customer = User::where('phone',$phone)->get();
    $c_id = $customer[0]->id;
    $orders = Order::where('cusID',$c_id)->orderBy('id','DESC')->get();
}

I get this list :

[
    {
        "id": 5375,
        "cusID": 1015,
        "websiteID": null,
        "brandID": 8052
    },
    {
        "id": 5378,
        "cusID": 1015,
        "websiteID": 1,
        "brandID": null
     }

Now how can I convert all null values to empty string once?

I tried this but dont work

foreach ($orders as $order) {
    foreach ($order as $key => $value) {
        if (is_null($value)) {
             $order[$key] = "";
        }
    }
  return $orders;
 }

also I tried this but not works:

array_map(function($v){
                return ($v === null) ? "" : $v;
              }, $order->toArray());

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

难理解 2025-02-18 02:10:17

我通过变更顺序到达数组解决了它:

foreach ($orders as $order) {

            foreach ($order->toArray() as $key => $value) {
                
                if (is_null($order[$key])) {
                     $order[$key] = "";
                }
            }
}

I Solved it by change order to Array:

foreach ($orders as $order) {

            foreach ($order->toArray() as $key => $value) {
                
                if (is_null($order[$key])) {
                     $order[$key] = "";
                }
            }
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文