2011-04-06 127 views
0

我有2個數組,數組1是學生(大小爲148)第二個數組是實習(大小爲106)。 現在我想要這兩個數組的長度相同,我的問題是如何將空元素添加到PHP的陣列實習中,或者如何從數組學生中刪除一些元素?數組長度相同

也許我解釋了爲什麼,那是我的目標。我實施了一種通用算法來指派每個學生實習。這兩個數組具有相同的長度是重要的。

我已經包含了上述數組的樣本。

陣列學生

array(148) { [0]=> 
    array(1) { 
    [0]=> 
    array(1) { 
     ["value"]=> 
     string(6) "804868" 
    } 
    } 
    [1]=> 
    array(1) { 
    [0]=> 
    array(1) { 
     ["value"]=> 
     string(6) "804869" 
    } 
    } 
    [2]=> 
    array(1) { 
    [0]=> 
    array(1) { 
     ["value"]=> 
     string(6) "705169" 
    } 
    } 
    [3]=> 
    array(1) { 
    [0]=> 
    array(1) { 
     ["value"]=> 
     string(6) "805148" 
    } 
    } 
    [4]=> 
    array(1) { 
    [0]=> 
    array(1) { 
     ["value"]=> 
     string(6) "702342" 
    } 
    } 
    [5]=> 
    array(1) { 
    [0]=> 
    array(1) { 
     ["value"]=> 
     string(6) "803176" 
    } 
    } 

陣列實習

enter code herearray(106) { [0]=> string(18) "Pcv (campus Aalst)" [1]=> string(53) "Mss (Privaatpraktijk kinesitherapie Walravens Marc)" [2]=> string(54) "Mss (Privaatpraktijk kinesitherapie Peeters Stefaan)" [3]=> string(35) "psychiatrie (campus Vercruysselaan)" [4]=> string(39) "interne geneeskunde (campus Loofstraat)" [5]=> string(40) "interne geneeskunde (campus Kennedylaan)" [6]=> string(29) "heelkunde (campus Loofstraat)" [7]=> string(30) "heelkunde (campus Kennedylaan)" [8]=> string(33) "heelkunde (campus Vercruysselaan)" [9]=> string(38) "logopedie (groepspraktijk Logomatopee)" [10]=> string(41) "logopedie (Koninklijk Instituut Spermali)" [11]=> string(34) "Fysieke activiteit (To Walk Again)" [12]=> string(53) "algemene en plastische heelkunde (AZ AZ Oudenaarde)" [13]=> string(38) "dermatologie (campus Maria Middelares)" [14]=> string(29) "NKO (campus Maria Middelares)" [15]=> string(38) "dermatologie (campus Maria Middelares)" [16]=> string(38) "Fysieke activiteit (Beweegkamp Vlabus)" [17]=> string(43) "Hoofdverpleegkundige (UZ UZ Gent Urologie)" [18]=> string(66) "Opleidingscoördinator (Onderwijsinstelling Arteveldehogeschool)" [19]=> string(90) "Verpleegkundig Specialist (UMC Universitair Medisch Centrum Universitair Medisch Centrum)" [20]=> string(31) "Mss (AZ Nikolaas campus Hamme)" [21]=> string(74) "Mss (Privaatpraktijk kinesitherapie Cuigniez Pascale PR Cuigniez Pascale)" [22]=> string(53) "Mss (Privaatpraktijk kinesitherapie Smesman Jeroen)" [23]=> string(103) "Verpleegkundig Specialist (AZ Algemeen Stedelijk Ziekenhuis Aalst Algemeen Stedelijk Ziekenhuis Aalst)" [24]=> string(33) "Pcv (AZ Jan Yperman Ziekenhuis)" [25]=> string(76) "Mss (AZ Gezondheidszorg Oostkust campus Blankenberge - AZ Koningin Fabiola)" [26]=> string(81) "Mss (AZ Gezondheidszorg Oostkust campus Knokke - AZ Onze-Lieve-Vrouw Ter Linden)" 
+0

從陣列添加或刪除項目沒有技術難度。你能否確定你需要的規則來決定要刪除的內容,以及需要添加什麼內容? – Skrol29 2011-04-06 10:21:37

+0

請問爲什麼你需要兩個陣列具有相同的長度? – Archimedix 2011-04-06 10:23:15

+0

事實上,您覺得您需要添加空白元素作爲您的編碼解決方案的一部分,這告訴我您沒有正確組織數據。我不知道你的數據庫是什麼樣的,但是你應該有一張獎學金錶,一張學生表和一張表連接兩個表。這將允許你有第三範式標準化的數據。當然,如下所述,有些方法可以擴展陣列,但我認爲在這種情況下最好的做法是回到製圖板,從一開始就想好一點。 – mountaingirl 2011-10-31 21:16:18

回答

4

擴展陣列,以給定長度array_pad()

$array = array_pad($array, $size, null); 

將添加null直到陣列已經達到給定大小。

要將某些元素剪切爲給定尺寸:array_slice()0作爲起始偏移量。

$array = array_slice($array, 0, $size); 
+0

感謝您的回覆! – user001 2011-04-06 10:55:08