php多維數組子類合併於父類的簡單介紹

本文目錄一覽:

PHP 多維數組的合併與重組

用foreach可以實現,希望對樓主有所幫助:$result 是結果

$result=array();

foreach ( $attribute as $k=$v ) {

$name= $v[‘group_name’];

$item = $v[‘item’];

// unset($v[‘group_name’]); // unset($v[‘item’]);

$result[$k][‘group_name’]=$name;

$result[$k][‘item’]=$item;

}

echo “pre”;

print_r( $result );

echo “/pre”;

php多維數組子類合併於父類

你這樣都是同個id分在一起,但是沒法劃分等級啊。我覺得你這個應該在表中加個字段parentid,比如說 ,學生管理 為一級,他下面的添加,列表是他的子類,這樣就好取了。類似於分類,出現等級劃分的效果。

php怎麼實現一張表中子類ID歸於父類ID

現在你的裡面只分了兩個類。其實這個表可以做無限級分類。輸出用遞歸實現。正好我這幾天研究了這個。代碼寫給你。

$result = mysql_query(“select * from tmodule_conf order by ModuleId”);

//首先我們把各個分類的值保存在一個二維數組中,在下面的遞歸函數里有用。   

while($row = mysql_fetch_object($result)){

 $arr[] = array($row-ModuleId,$row-SubModuleId,$row-ModuleName);//每行保存一個分類的ModuleId,SubModuleId,ModuleName

 }

 ###########普通顯示分類####################

function fenlei($SubModuleId=-1,$str){  //$f_id初始化為0,也就是從最大分類開始循環.   

 global $arr;   //聲明$arr為全局變量才可在函數里引用。   

 for($i=0;$icount($arr);$i++){   //對每個分類進行循環。   

  if($arr[$i][1]==$SubModuleId){   //$arr[$i][1]表示第$i+1個分類的SubModuleId的值。開始$SubModuleId=-1,也就是把SubModuleId=-1的分類輸出來。   

    echo $str.”–“.$arr[$i][2].”br”; //$arr[$i][2]表示第$i+1個分類的name的值。   

   fenlei($arr[$i][0],$str.”nbsp;nbsp;”);  //$arr[$i][1]表示第$i+1個分類的id的值。進行遞歸,也就是把自己的ModuleId作為SubModuleId參數把自己的子類再循環出來。   

  }  

 }   

}

//調用例子

fenlei(-1,” nbsp;nbsp;”);

php下將多個數組合併成一個數組的方法與實例代碼

1.合併數組

array_merge()函數將數組合併到一起,返回一個聯合的數組。所得到的數組以第一個輸入數組參數開始,按後面數組參數出現的順序依次迫加。其形式為:

複製代碼

代碼如下:

array

array_merge

(array

array1

array2…,arrayN)

將一個或多個數組的單元合併起來,一個數組中的值附加在前一個數組的後面。返回作為結果的數組。

如果輸入的數組中有相同的字符串鍵名,則該鍵名後面的值將覆蓋前一個值。然而,如果數組包含數字鍵名,後面的值將不會覆蓋原來的值,而是附加到後面。

如果只給了一個數組並且該數組是數字索引的,則鍵名會以連續方式重新索引。

實例如下:

複製代碼

代碼如下:

$face

=

array(“J”,”Q”,”K”,”A”);

$numbered

=

array(“2″,”3″,”4″,”5″,”6″,”7″,”8″,”9”);

$cards

=

array_merge($face,

$numbered);

shuffle($cards);

print_r($cards);

這將返回如下所示的結果,運行代碼:

複製代碼

代碼如下:

Array

(

[0]

=

A

[1]

=

4

[2]

=

9

[3]

=

3

[4]

=

K

[5]

=

7

[6]

=

5

[7]

=

Q

[8]

=

6

[9]

=

8

[10]

=

2

[11]

=

J

)

2.遞歸追加數組

array_merge_recursive()函數與array_merge()相同,可以將兩個或多個數組合併在一起,形成一個聯合的數組.兩者之間的區別在於,當某個輸入數組中的某個鍵己經存在於結果數組中時該函數會採取不同的處理方式.array_merge()會覆蓋前面存在的鍵/值對,替換為當前輸入數組中的鍵/值對,而array_merge_recursive()將把兩個值合併在一起,形成一個新的數組,並以原有的鍵作為數組名。還有一個數組合併的形式,就是遞歸追加數組。其形式為:

view

sourceprint?array

array_merge_recursive(

array

key,array

values

)

示例如下:

複製代碼

代碼如下:

$class1

=

array(“John”

=

100,

“James”

=

85);

$class2

=

array(“Micky”

=

78,

“John”

=

45);

$classScores

=

array_merge_recursive($class1,

$class2);

print_r($classScores);

這將返回如下結果:

view

sourceprint?Array

(

[John]

=

Array

(

[0]

=

100

[1]

=

45

)

[James]

=

85

[Micky]

=

78

)

3.連接兩個數組

array_combine()函數會得到一個新數組,它由一組提交的鍵和對應的值組成。其形式為:

view

sourceprint?array

array_merge(array

array1,array

array2[…,array

arrayN])

注意,兩個輸入數組必須大小相同,不能為空。示例如下:

複製代碼

代碼如下:

$abbreviations

=

array(“AL”,”AK”,”AZ”,”AR”);

$states

=

array(“Alabama”,”Alaska”,”Arizona”,”Arkansas”);

$stateMap

=

array_combine($abbreviations,$states);

print_r($stateMap);

這會返回:

複製代碼

代碼如下:

Array

(

[AL]

=

Alabama

[AK]

=

Alaska

[AZ]

=

Arizona

[AR]

=

Arkansas

)

php兩個相關的多維數組怎麼合併成一個數組

如果是兩個數組是相對應的,可以使用以下方法:

?php

//數組1(gc_class):

$gc_class = array(

    0 =array(‘gc_id’=1,’gc_name’=’分類1’, ‘gc_title’ = ‘111111’),

    1 =array(‘gc_id’=2,’gc_name’=’分類2’, ‘gc_title’ = ‘2222’)

);

//數組2(acticity):

$acticity = array(

    ‘0’=array(‘activity_id’=1, ‘gc_class’=1, ‘activity_name’=’分類1下面的活動’),

    ‘1’=array(‘activity_id’=2, ‘gc_class’=2, ‘activity_name’=’分類2下面的活動’)

);

$arrs = array();

foreach($gc_class as $key = $_gc_class){

    $arrs[$key] = array_merge($_gc_class, $acticity[$key]);

}

print_r($arrs);

exit;

原創文章,作者:ZNPQ,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/144895.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
ZNPQ的頭像ZNPQ
上一篇 2024-10-26 11:54
下一篇 2024-10-26 11:54

相關推薦

  • Python導入數組

    本文將為您詳細闡述Python導入數組的方法、優勢、適用場景等方面,並附上代碼示例。 一、numpy庫的使用 numpy是Python中一個強大的數學庫,其中提供了非常豐富的數學函…

    編程 2025-04-29
  • Python返回數組:一次性搞定多種數據類型

    Python是一種多用途的高級編程語言,具有高效性和易讀性的特點,因此被廣泛應用於數據科學、機器學習、Web開發、遊戲開發等各個領域。其中,Python返回數組也是一項非常強大的功…

    編程 2025-04-29
  • Python去掉數組的中括號

    在Python中,被中括號包裹的數據結構是列表,列表是Python中非常常見的數據類型之一。但是,有些時候我們需要將列表展開成一維的數組,並且去掉中括號。本文將為大家詳細介紹如何用…

    編程 2025-04-29
  • Python操作數組

    本文將從多個方面詳細介紹如何使用Python操作5個數組成的列表。 一、數組的定義 數組是一種用於存儲相同類型數據的數據結構。Python中的數組是通過列表來實現的,列表中可以存放…

    編程 2025-04-29
  • Python二維數組對齊輸出

    本文將從多個方面詳細闡述Python二維數組對齊輸出的方法與技巧。 一、格式化輸出 Python中提供了格式化輸出的方法,可以對輸出的字符串進行格式化處理。 names = [‘A…

    編程 2025-04-29
  • Java創建一個有10萬個元素的數組

    本文將從以下方面對Java創建一個有10萬個元素的數組進行詳細闡述: 一、基本介紹 Java是一種面向對象的編程語言,其強大的數組功能可以支持創建大規模的多維數組以及各種複雜的數據…

    編程 2025-04-28
  • Python數組隨機分組用法介紹

    Python數組隨機分組是一個在數據分析與處理中常用的技術,它可以將一個大的數據集分成若干組,以便於進行處理和分析。本文將從多個方面對Python數組隨機分組進行詳細的闡述,包括使…

    編程 2025-04-28
  • Python數組索引位置用法介紹

    Python是一門多用途的編程語言,它有着非常強大的數據處理能力。數組是其中一個非常重要的數據類型之一。Python支持多種方式來操作數組的索引位置,我們可以從以下幾個方面對Pyt…

    編程 2025-04-28
  • Python語言數組從大到小排序符號的用法介紹

    當我們使用Python進行編程的時候,經常需要對數組進行排序從而使數組更加有序,而數組的排序方式有很多,其中從大到小排序符號是一種常見的排序方式。本文將從多個方面對Python語言…

    編程 2025-04-28
  • Python多維列表的生成

    本篇文章將從多個方面詳細闡述Python中多維列表的生成方法。 一、基礎方法 Python中可以使用嵌套列表的方式實現多維列表的生成,例如: multi_list = [[0 fo…

    編程 2025-04-28

發表回復

登錄後才能評論