以一列將子數組分組,並從組內的另一列建立逗號分隔值
在PHP 中,根據一列對子數組進行分組,連接這些組中另一列的值帶來了獨特的挑戰。為了解決這個問題,我們提供了一個詳細的解決方案,將給定的陣列轉換為所需的結構化格式。
提供的範例陣列由每個包含兩個元素的子陣列組成。目標是根據第二個元素(稱為「列」)對子數組進行分組,並建立一個新數組,其中每個元素代表一個群組。在每個組元素中,第一個元素應該是分組子數組中第一個元素的逗號分隔列表,而第二個元素表示公共列。
為了實現這一點,我們使用逐步-步驟方法:
下面提供的PHP 腳本演示了這種方法:
<code class="php">// Create the input array $data = array( array('444', '0081'), array('449', '0081'), array('451', '0081'), array('455', '2100'), array('469', '2100') ); // Initialize the groups array $groups = array(); // Loop through the original array foreach ($data as $item) { $key = $item[1]; // Get the group key // Check if the group key exists if (!array_key_exists($key, $groups)) { $groups[$key] = array(); } // Add the subarray to the group $groups[$key][] = $item[0]; } // Create the structured array $structured = array(); foreach ($groups as $group => $values) { $structured[] = array(implode(',', $values), $group); } // Display the output print_r($structured);</code>
此腳本有效地將輸入數組轉換為新數組具有指定的結構,其中子數組基於公共列進行分組,分組子數組的第一個元素以逗號連接。
以上是如何根據一列對 PHP 中的子數組進行分組,並從這些組中的另一列建立逗號分隔值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!