Laravel数组到字符串的转换


Laravel array to string conversion

我想将我的数组转换为逗号分隔的字符串。

我的阵列

array:2 [
  0 => array:1 [
    "name" => "streaming"
  ]
  1 => array:1 [
    "name" => "ladies bag"
  ]
]

我希望结果为streaming,ladies bag

由于这些看起来像转换为数组的 Laravel集合,我建议使用内置的 implode() 方法。

根据文档:

$collection = collect([
    ['account_id' => 1, 'product' => 'Desk'],
    ['account_id' => 2, 'product' => 'Chair'],
]);
$collection->implode('product', ', ');
// Desk, Chair

参考资料:https://laravel.com/docs/master/collections#method-implode

但是,如果它们是普通数组,并且由于它不是单个数组,则必须在运行 PHP 的普通 implode() 函数之前编写一个 foreach 或用 array_column() 将其展平。

也许这样简单一点

$string=implode(",",$your_array);

使用 foreach 循环两次来隔离数组,并使用 substr 删除最后一个字符

$string = '';
foreach($your_array as $a)
{    
    foreach($a as $b=>$c)
    {
        $string .= $c.',';
    }
}
$solution = substr($string,0,-1);
print_r($solution);

U 可以尝试一个简单的 foreach 并在每次迭代后添加一个逗号值。

 $string='';
 foreach ($your_array as $value){
    $string .=  $value.',';
 }

我已经尝试了以下代码将数组转换为 laravel 刀片文件中的字符串,它工作正常.

<body>
  <center>
     <h1> LARAVEL ARRAY TO STRING CONVERSION </h1>
  </center>
  <div class="main">
     <?php
        $arr=array("this","is","an","array");
        
        echo "array elements are"."<br>";
        
        foreach($arr as $value)
         echo $value."<br>";
        
        echo "The string is "."<br>";
        ?>
     @foreach($arr as $value)
     {!! $value !!}
     @endforeach
  </div>