我有資料陣列:
Array
(
[0] => Illuminate\Support\Collection Object
(
[items:protected] => Array
(
[0] => stdClass Object
(
[product_id] => 780
)
[1] => stdClass Object
(
[product_id] => 789
)
[2] => stdClass Object
(
[product_id] => 800
)
[3] => stdClass Object
(
[product_id] => 769
)
)
)
)
如何在陣列上獲取僅資料值?
需要的輸出$data = '780','789','800','769';
uj5u.com熱心網友回復:
我假設您正在使用 Equolent ORM 從您的資料庫中獲取這些資料。
所以首先獲取資料:
$resultsInitial = Model::get(); // you can specify your clauses here
然后創建一個新的空陣列
$results = [];
然后運行 ??foreach 將資料推送到新陣列中
foreach ($resultsInitial as $record) {
array_push($results, $record->product_id);
}
然后最后回傳新陣列
return $results; // output: [1,2,3]
uj5u.com熱心網友回復:
很簡單,您可以通過以下代碼獲取陣列
$resultsInitial->toArray();
uj5u.com熱心網友回復:
implode方法解決了你的問題。下面的代碼塊中提到了一個示例。
$collection = collect([
['account_id' => 1, 'product' => 'Desk'],
['account_id' => 2, 'product' => 'Chair'],
]);
$collection->implode('product', ', ');
// Desk, Chair
有關詳細資訊,請查看Laravel 檔案的implode。
如果您想將輸出作為陣列,那么您應該使用該pluck方法。下面解釋相同的示例。
$collection = collect([
['product_id' => 'prod-100', 'name' => 'Desk'],
['product_id' => 'prod-200', 'name' => 'Chair'],
]);
$plucked = $collection->pluck('name');
$plucked->all();
// ['Desk', 'Chair']
有關詳細資訊,請查看Laravel檔案。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/411941.html
標籤:
上一篇:Java將物件陣列轉換為字串陣列
下一篇:根據級別列印出物件陣列
