function.array-merge.html
9.64 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<title>Führt ein oder mehrere Arrays zusammen</title>
</head>
<body><div class="manualnavbar" style="text-align: center;">
<div class="prev" style="text-align: left; float: left;"><a href="function.array-merge-recursive.html">array_merge_recursive</a></div>
<div class="next" style="text-align: right; float: right;"><a href="function.array-multisort.html">array_multisort</a></div>
<div class="up"><a href="ref.array.html">Array Funktionen</a></div>
<div class="home"><a href="index.html">PHP Manual</a></div>
</div><hr /><div id="function.array-merge" class="refentry">
<div class="refnamediv">
<h1 class="refname">array_merge</h1>
<p class="verinfo">(PHP 4, PHP 5)</p><p class="refpurpose"><span class="refname">array_merge</span> — <span class="dc-title">Führt ein oder mehrere Arrays zusammen</span></p>
</div>
<div class="refsect1 description" id="refsect1-function.array-merge-description">
<h3 class="title">Beschreibung</h3>
<div class="methodsynopsis dc-description">
]] )</div>
<p class="para rdfs-comment">
<span class="function"><strong>array_merge()</strong></span> fügt die Elemente von einem oder
mehreren Arrays zusammen, indem die Werte des einen an das Ende des
anderen angehängt werden. Das daraus resultierende Array wird
zurückgegeben.
</p>
<p class="para">
Haben die angegebenen Arrays die selben String-Schlüssel, dann
wird der hintere Wert dieses Schlüssels den vorhergehenden
überschreiben. Haben die Arrays den gleichen numerischen
Schlüssel, dann wird der hintere Wert den vorhergehenden <em class="emphasis">nicht</em> überschreiben, sondern angehängt.
</p>
<p class="para">
Falls nur ein Array angegeben und dieses numerisch indiziert ist, wird das
Array fortlaufend neu nummeriert.
</p>
<p class="para">
<div class="example" id="example-4922">
<p><strong>Beispiel #1 <span class="function"><strong>array_merge()</strong></span></strong></p>
<div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB"><?php<br />$array1 </span><span style="color: #007700">= array(</span><span style="color: #DD0000">"farbe" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"rot"</span><span style="color: #007700">, </span><span style="color: #0000BB">2</span><span style="color: #007700">, </span><span style="color: #0000BB">4</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$array2 </span><span style="color: #007700">= array(</span><span style="color: #DD0000">"a"</span><span style="color: #007700">, </span><span style="color: #DD0000">"b"</span><span style="color: #007700">, </span><span style="color: #DD0000">"farbe" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"grün"</span><span style="color: #007700">, </span><span style="color: #DD0000">"form" </span><span style="color: #007700">=> </span><span style="color: #DD0000">"trapezoid"</span><span style="color: #007700">, </span><span style="color: #0000BB">4</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">array_merge</span><span style="color: #007700">(</span><span style="color: #0000BB">$array1</span><span style="color: #007700">, </span><span style="color: #0000BB">$array2</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span>
</div>
<div class="example-contents"><p>
Nun ist <em>$result</em>:
</p></div>
<div class="example-contents screen">
<div class="cdata"><pre>
Array
(
[farbe] => grün
[0] => 2
[1] => 4
[3] => b
[form] => trapezoid
[4] => 4
)
</pre></div>
</div>
</div>
</p>
<p class="para">
<div class="example" id="example-4923">
<span style="color: #0000BB"><?php<br />$array1 </span><span style="color: #007700">= array();<br /></span><span style="color: #0000BB">$array2 </span><span style="color: #007700">= array(</span><span style="color: #0000BB">1 </span><span style="color: #007700">=> </span><span style="color: #DD0000">"data"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">array_merge</span><span style="color: #007700">(</span><span style="color: #0000BB">$array1</span><span style="color: #007700">, </span><span style="color: #0000BB">$array2</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span>
</span>
</div>
<div class="example-contents"><p>
Vergessen Sie nicht, dass numerische Schlüssel neu numeriert werden!
</div>
<div class="example-contents screen">
<div class="cdata"><pre>
Array
(
[0] => data
)
</pre></div>
</div>
<div class="example-contents"><p>
Wenn Sie die Arrays komplett erhalten und nur eines an das andere
anhängen wollen, verwenden Sie den Operator <em>+</em>:
</p></div>
<div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB"><?php<br />$array1 </span><span style="color: #007700">= array();<br /></span><span style="color: #0000BB">$array2 </span><span style="color: #007700">= array(</span><span style="color: #0000BB">1 </span><span style="color: #007700">=> </span><span style="color: #DD0000">"data"</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">$array1 </span><span style="color: #007700">+ </span><span style="color: #0000BB">$array2</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">?></span>
</span>
</code></div>
</div>
<div class="example-contents"><p>
Der numerische Schlüssel sowie die Assoziation bleiben erhalten.
</p></div>
<div class="example-contents screen">
<div class="cdata"><pre>
Array
(
[1] => data
)
</pre></div>
</div>
</div>
</p>
<div class="warning"><strong class="warning">Warnung</strong>
<p class="para">
Das Verhalten von <span class="function"><strong>array_merge()</strong></span> wurde in PHP 5 geändert.
Anders als in PHP 4 akzeptiert <span class="function"><strong>array_merge()</strong></span> jetzt nur
noch Parameter vom Typ <span class="type"><a href="language.types.array.html" class="type array">array</a></span>. Man kann jedoch Typumwandlung
verwenden, um andere Typen zusammenzuführen. Schauen Sie für Details in das
Beispiel unten.
</p>
<p class="para">
<div class="example" id="example-4924">
<p><strong>Beispiel #3 <span class="function"><strong>array_merge()</strong></span> PHP 5 Beispiel</strong></p>
<div class="example-contents">
<div class="phpcode"><code><span style="color: #000000">
<span style="color: #0000BB"><?php<br />$beginning </span><span style="color: #007700">= </span><span style="color: #DD0000">'foo'</span><span style="color: #007700">;<br /></span><span style="color: #0000BB">$end </span><span style="color: #007700">= array(</span><span style="color: #0000BB">1 </span><span style="color: #007700">=> </span><span style="color: #DD0000">'bar'</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">$result </span><span style="color: #007700">= </span><span style="color: #0000BB">array_merge</span><span style="color: #007700">((array)</span><span style="color: #0000BB">$beginning</span><span style="color: #007700">, (array)</span><span style="color: #0000BB">$end</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">print_r</span><span style="color: #007700">(</span><span style="color: #0000BB">$result</span><span style="color: #007700">);<br /></span><span style="color: #0000BB">?></span>
</span>
</code></div>
</div>
<div class="example-contents"><p>Das oben gezeigte Beispiel erzeugt folgende
Ausgabe:</p></div>
<div class="example-contents screen">
<div class="cdata"><pre>
Array
(
[0] => foo
[1] => bar
)
</pre></div>
</div>
</div>
</p>
</div>
<p class="para">
Siehe auch <span class="function"><a href="function.array-merge-recursive.html" class="function">array_merge_recursive()</a></span>,
<span class="function"><a href="function.array-combine.html" class="function">array_combine()</a></span> und
<a href="language.operators.array.html" class="link">array operators</a>.
</p>
</div>
</div><hr /><div class="manualnavbar" style="text-align: center;">
<div class="prev" style="text-align: left; float: left;"><a href="function.array-merge-recursive.html">array_merge_recursive</a></div>
<div class="next" style="text-align: right; float: right;"><a href="function.array-multisort.html">array_multisort</a></div>
<div class="up"><a href="ref.array.html">Array Funktionen</a></div>
<div class="home"><a href="index.html">PHP Manual</a></div>
</div></body></html>