| Ein Array ( Liste, Vektor ) fasst mehrere Variable unter einem gemeinsamen Namen zusammen. PHP bietet nicht nur klassische indizierte Arrays sondern auch assoziative Arrays. | PHP bietet derzeit ca. 80 verschiedene Funktionen zur Arbeit mit Arrays. Das ist sehr vielseitig, aber auch verwirrend. Hier werden einige ausgewählte Funktionen vorgestellt. |
PHP
|
PHP Hypertext Processor |
| Arrays in PHP | Schlüssel, Indizierte und assoziative Arrays, Speicher |
| Definition | Erzeugen & Löschen von Arrays, Initialisierung mit Daten |
| Array-Variable | Kopie und Äquivalenz, Austausch mit Variablen und Unterprogrammen |
| Schlüssel & Wert | Zerlegung, Zusammensetzung und Tausch |
| Eigenschaften | Existenz, Type, Anzahl der Elemente eines Arrays |
| Suche | Suche nach Schlüsseln und Werten |
| Sortieren | Sortieren und Mischen von Arrays |
| Zugriff | Lesen & Schreiben von Array-Elementen |
| Schleife | Bearbeitung von Array-Elementen in Schleifen (loops) |
| ArrayPointer | Funktionen zur Anwendung von Array-(Index)-Pointern |
| String | Umwandlung strukturierter Strings in Arrays und umgekehrt |
| Multidimension | Mehrdimensionale Arrays |
| Datenspeicher | Arrays als Stapel oder Warteschlange |
| Kombination | Aufbau von Arrays aus verschiedenen Teilen |
| Spaltung | Aufspaltung von Arrays in Teile |
| Arithmetik | Funktionen mit Array-Arithmetik und Array-Algorithmen |
| Verwandte Themen | Arrays in Javascript, Perl, VBA |
Arrays: Indiziert oder assoziativ |
|||||||||||||||||||||||||||
Schlüssel (key)PHP verwendet zur Kennzeichnung der Elemente eines Arrays Schlüssel (keys).Als Schlüssel sind entweder ganze Zahlen oder Worte (Text, string) zulässig. Jedes einzelne Element jedes Arrays speichert daher 2 Daten als Paar: Den Schlüssel und den Wert. Das ermöglicht die Verwendung 'klassischer' Index-Zahlen (0,1,2, ..) ebenso wie von Worten ("Vorname","Zuname", ..) für die Bezeichnung bestimmter Elemente eines Arrays. |
Ganze ZahlenWenn ganze Zahlen als Schlüssel eingesetzt werden, dann wird meist der Begriff Index dafür verwendet.Text (string)Wenn Texte (Worte, strings) als Schlüssel eingesetzt werden, dann verwendet man meist den Begriff assoziatives Array.Intern macht PHP keinen Unterschied zwischen diesen Typen, man kann sie daher sogar miteinander mischen (Beispiel unten). |
||||||||||||||||||||||||||
|
Ganze Zahlen (auch negative) können als Schlüssel (Index) im Bereich
-231..+231-1 verwendet werden. Überschreitung dieser
Grenzen liefert keine Fehlermeldung ! Strings (Texte) können als assoziative Schlüssel verwendet werden. Sie dürfen auch Leerzeichen oder Sonderzeichen enthalten, empfohlen werden jedoch nur einfache Worte. Ganze Zahlen und Strings können 'gemischt' als Schlüssel verwendet werden, das wird allerdings bald unübersichtlich und daher nicht empfohlen. |
// Ganze Zahlen:
$a[0] = 1;$a[-2147483648] = 1; // min $a[2147483647] = 1; // max // Strings:
$a['Vorname']='Franz';$a['%2 oder 3;']="neue \n Zeile"; |
||||||||||||||||||||||||||
|
Gleitkomma-Zahlen werden beim (nicht empfohlenen !) Versuch ihrer Verwendung
als Schlüssel ohne Warnung auf ganze Zahlen abgeschnitten. Als Wert sind Gleitkomma-Zahlen natürlich zulässig. |
// Vorsicht ! - dieser Befehl
$a[3.1416] = 3.1416;
// ergibt $a[3]=3.1416;
|
||||||||||||||||||||||||||
PHP-Array am Beispiel eines Arrays $a
|
|||||||||||||||||||||||||||
Array-PointerJedes Array verfügt über einen eigenen Array-Pointer. Dieser Zeiger weist immer auf genau ein Element, das 'aktuelle' Array-Element kann man jeweils bearbeiten. |
♦ Details zum ↓ ArrayPointer auf dieser Seite |
||||||||||||||||||||||||||
SpeicherplatzDer für PHP Script-Programme erlaubte Speicherplatz ist aus gutem Grund streng begrenzt. Das erhöht die Sicherheit und verhindert übermäßigen Konsum von Server-Resourcen für einzelne Clents.Die erlaubte Grenze ist in der → Konfigurations-Datei php.ini eingetragen und kann z.B. so angezeigt werden: print get_cfg_var('memory_limit');
Am eigenen Webserver kann man die Grenze beliebig erhöhen, allerdings lässt das der Provider normalerweise nicht zu - Die PHP-Programme laufen dann nur mehr am eigenen Webserver, nicht beim Provider. Die bessere Strategie ist es, mit Resourcen sparsam umzugehen, und sie nach Verwendung wieder freizugeben, z.B. mit Funktion unset() (→ Array-Eigenschaften). |
Wenn ein Programm mehr Speicher erfordert als für PHP erlaubt, dann kann man auf eine Datei oder auf eine Datenbank ausweichen. Beides erfordert jedoch deutlich mehr Zeit zur Verarbeitung - Man stößt daher evtl. an die Grenze der für PHP erlaubten Ausführungszeit. print get_cfg_var('max_execution_time');
Derart umfangreiche Programme sind allerdings Sonderfälle: Meist werden sie ohnehin nur auf einem einzigen PC ausgefährt. Das Überschreiten der Grenzen ist meist auch ein Indiz dafür, dass man eine Aufgabe anders und besser organisieren sollte.
Eine interessante Lösung bietet die Verteilung solcher Arbeiten im Internet,
z.B. das klassische SETI-Projekt.
Jeder PC holt sich eine Teil-Aufgabe, berechnet das Ergebnis und liefert es wieder ab.
Dadurch wird der zentrale Server nur wenig belastet, und die Kapazität zahlreicher
verteilter PC gut ausgenutzt.
|
||||||||||||||||||||||||||
Definition und Initialisierung von Arrays |
|
Leeres ArrayDer Befehl array() erzeugt ein neues leeres Array mit dem gewählten Namen (hier $a).$a = array();
Die Anzahl der Elemente muss dabei nicht angegeben werden und beträgt
zunächst 0.
|
PHP verwaltet Arrays mit dynamischer Länge, d.h. die benötigte Länge wird später bei der Verwendung angepasst. Als Array-Namen sind alle in PHP zulässigen Namen möglich. |
Initialisierung von Arrays ohne SchlüsselWenn bereits bei der Definition die Werte aller Elemente bekannt sind, dann werden diese als Argumente eingetragen, mit Beistrich getrennt.• Ohne Angabe von Schlüsseln werden ganzzahlige Schlüssel [0],[1],[2],.. verwendet. Ein neues Element von $ca erhält immer den höchsten Zahlen-Index. $ca = array(11,22,3.4567);
Das nächste Element würde den Index $ca[3]
erhalten.• Variablen-Typen können gemischt werden: Array $ca enthält ganze Zahlen und Gleitkomma-Zahlen, Array $cb enthält Texte (strings), $cc Zahlen und Texte.
$cb = array('Anton','Berta');
Typenreine Arrays sollten mit einem optimierten PHP-Interpreter schneller arbeiten
und weniger Speicher belegen.$cc = array(44,'Dora',55); $cd = array('Emil',"$vorname $zuname"); • Ein leeres Element wird auf den Wert NULL gesetzt, das ist ein Unterschied zur Zahl 0 und zu einem leeren String '' $cnull = array(NULL,0,'');
|
• Ein Array kann andere Arrays als Elemente enthalten. Dabei ergeben sich ↓ mehrdimensionale Arrays $ce = array($ca,$cc);
• Wenn als Argument in () nur ein Element angeführt ist, dann wird daraus das einzige Element dieses Arrays (hier $c1[0] ) erzeugt. $c1 = array(3);
Verwechseln sie das nicht mit dem Versuch, 3 leere Elemente zu erzeugen.
$c3 = array(NULL,NULL,NULL);
• Bei der Initialisierung darf kein Element ausgelassen werden. Leere Elemente werden mit dem Wert NULL korrekt initialisiert. // Fehler:
$cf = array(123,,456);
|
Array mit Initialisierung von Schlüssel und WertEin assoziatives Array verwendet Schlüssel-Worte zur Verwaltung seiner Elemente.
$p = array('pnr'=>123, 'vn'=>'Emil', 'zn'=>'Erpel');
Die 'Pfeil-Syntax' => wird in PHP für
die logische Verbindung zwischen Schlüssel (key) und Wert verwendet.
|
Das Beispiel simuliert einen Datensatz (Zeile) aus einer Personen-Datei (Tabelle). • Die 3 Elemente des Arrays kann man nur mit ihren Schlüsseln ['pnr'],['vn'],['zn'] adressieren, nicht mit einem numerischen Index [0],[1],[2] |
Zeilenweise InitialisierungSo kann man Daten zeilenweise in ein Array eingeben. Das eignet sich für die Automatisierung: Texte dieser Art kann man mit vielen Programmen bzw. mit jeder Programmiersprache erzeugen, und damit Daten an ein PHP Script-Programm übergeben. |
$b = array();
$i = 0; $b[$i++] = 12; $b[$i++] = 34; $b[$i++] = 567; |
Funktion array_fill()erzeugt ein neues Array mit Schlüsseln in einer arithmetischen Reihe.Sie erhält 3 Argumente ($kmin, $ck, $v). Die Anzahl von $ck Array-Elementen mit Schlüsseln ab [$kmin] erhalten den Wert $v $abc = array_fill(5,3,'xyz');
Das Beispiel erzeugt 3 Elemente und ist äquivalent zu
$abc[5] = 'xyz';
$abc[6] = 'xyz'; $abc[7] = 'xyz'; Die Verwendung von array_fill(0,$imax,NULL) erzeugt ein Array mit $imax leeren Elementen: $leer = array_fill(0,10,NULL);
• Achtung: Allenfalls vorhandene gleichnamige Variable oder Arrays werden überschrieben. |
Funktion range()erzeugt ein neues Array mit den Werten einer arithmetischen Reihe.Sie erhält 2 Argumente ($vmin, $vmax) $r = range(33,35);
Das Beispiel erzeugt 3 Elemente und ist äquivalent zu
$r[0] = 33;
Die Schlüssel werden ganzzahlig ab [0] vergeben.$r[1] = 34; $r[2] = 35; • Mit $vmin>$vmax lassen sich Arrays mit fallenden Zahlenwerten erzeugen. • Ab PHP-Version>=5 kann man ein 3.Argument $vstep angeben. Damit werden Werte im angegebenen Abstand erzeugt. • Achtung: Allenfalls vorhandene gleichnamige Variable oder Arrays werden überschrieben. |
Funktion unset() löscht ein ArrayInsbesondere große Arrays sollte man nach Gebrauch löschen, um den belegten Speicherplatz freizugeben. |
unset($a); |
Array-Variable, Übergabe an Unterprogramme |
|
Kopie
$a = array(99,88,77);
Hier wird eine komplette Kopie von Array $a erzeugt und
an $b übergeben.
Die Elemente von $a und von $b
können unabhängig voneinander geändert werden.$b = $a; Beim Kopieren wird der Speicher-Bedarf verdoppelt. Das kann bei großen Arrays zu Problemen führen ! |
Äquivalenz
$a = array(66,55,44);
Hier wird lediglich $b als zusätzlicher Name
für das Array $a erzeugt.
Der Operator & bezeichnet die
Adresse des folgenden Arguments.$b = &$a; Jede Änderung von $a wirkt genauso wie eine Änderung von $b. Bei der Vergabe äquivalenter Namen wird kein zusätzlicher Speicher belegt. Diese Technik wird vorteilhaft bei der Übergabe von Arrays an Unterprogramme (Funktionen) verwendet. |
Übergabe eines Arrays an ein UnterprogrammIn der Funktion sub1() wird mit dem Operator & die Adresse des Arguments $a übernommen.Das Array $a des Unterprogramms ist daher identisch mit dem Array $m des aufrufenden Programms, d.h. man braucht es auch nicht mehr mit return zurückzugeben. Zur Demonstration werden die Werte aller Elemente um +1 erhöht. Da keine Daten an das Unterprogramm übergeben werden, sondern nur eine einzige Adresse, ist diese Version sehr schnell und für jede Zugriffs-Art (Lesen und Schreiben der Array-Elemente) empfehlenswert. |
function sub1(&$a) {
Nach Ausführung von sub1 enthält
$m die Werte (110,120,130)
for($k=0;$k<count($a);$k++) {
}$a[$k]*=10;
}
$m = array(11,12,13); sub1($m); |
|
Hier wird das gesamte Array $a als Kopie übernommen. Das verdoppelt den Speicher-Bedarf und verbraucht unnötig viel Prozessor-Zeit. Die Änderung der Werte funktioniert zwar, wirkt jedoch ohne Rückgabe nur auf die Arbeitskopie $a und nicht aus das Original-Array $m Bei Rückgabe von Array $a werden alle Elemente von $m mit dem geänderten Array überschrieben - eine weitere unnötig zeitraubende Arbeit. |
function nix1($a) {
for($k=0;$k<count($a);$k++) {
}$a[$k]++;
}return $a; $m = array(11,12,13); $m = nix1($m); |
Array global deklarierenEine weitere Möglichkeit, ein Array zum Lesen und Schreiben an ein Unterprogramm zu übergeben, ist die global-Deklaration.In diesem Fall werden keine Daten an das Unterprogramm sub2 übergeben oder von ihm zurückgegeben, das Unterprogramm greift direkt auf das 'Original'-Array $m zu. Diese Methode ist rasch und einfach, jedoch weniger flexibel. Sie kann nur auf ein einziges Array angewendet werden, während die Übergabe der Array-Adresse (s.oben) auf jedes Array angewendet werden kann. |
function sub2() {
global $m;
}for($k=0;$k<count($m);$k++) { $m[$k]++;
}
$m = array(11,12,13); sub2($m); |
Rückgabe eines Arrays aus einem UnterprogrammDie Rückgabe von beliebigen Variablen - auch von Arrays - erfolgt mit dem return-Befehl.Das Beispiel rechts zeigt die Funktion myrange(), welche ein Array mit so vielen Elementen erzeugt, wie im Argument angefordert werden (hier 1000). Die Rückgabe ist nur dann notwendig, wenn das Array im Unterprogramm neu erzeugt wird. In allen anderen Fällen (s.o.) verwenden sie besser äquivalente Arrays. Das Beispiel dient nur zur Demonstration und wird in der Praxis schneller durch die PHP Standard-Funktion range() (↑ Initialisierung) ausgeführt. |
function myrange($vmax) {
$a = array();
}for($k=0;$k<$vmax;$k++) { $a[$k] = $k;
}return $a; $m = myrange(1000); |
Schlüssel und Wert: Zerlegung, Zusammensetzung und Tausch |
|
|
Jedes assoziative Array besteht intern aus den miteinander verknüpften Listen
der Schlüssel und der Werte. In diesem Absatz werden Methoden zur Manipulation dieser Listen vorgestellt. (Sie ergeben für Arrays mit ganzzahligen Schlüsseln normalerweise keinen Sinn). |
Test-Array für die Funktionen dieses Kapitels:
$persalt = array('Anna'=>25,'Zoe'=>19);
ist äquivalent zu
$persalt['Anna'] = 25;
$persalt['Zoe'] = 19; |
Funktion array_keys()erzeugt ein neues Array und setzt die Schlüssel eines Arrays als Werte ein. |
$pers = array_keys($persalt);
ergibt
$pers[0] = 'Anna';
$pers[1] = 'Zoe'; |
| Mit einem zweiten optionalen Argument werden die Elemente nach Wert gefiltert, d.h. nur solche Schlüssel eingetragen, für welche der Wert genau gleich dem Filter (hier die Zahl 19) ist. |
$pers = array_keys($persalt,19);
ergibt nur
$pers[0] = 'Anna';
|
Funktion array_values()erzeugt ein neues Array aus den Werten eines Arrays. |
$alt = array_values($persalt);
ergibt
$alt[0] = 25;
$alt[1] = 19; |
Funktion array_flip()erzeugt ein neues Array und vertauscht in der Kopie die Schlüssel und Werte aller Elemente.Die Funktion kann nur auf ganzzahlige und Text-Werte angewendet werden, nicht auf Elemente mit Gleitkomma-Werten. |
$altpers = array_flip($persalt);
ergibt
$altpers[25] = 'Anna';
$altpers[19] = 'Zoe'; |
Funktion array_combine()erzeugt aus einem Schlüssel-Array und einem Werte-Array ein neues assoziatives Array.Wenn die Länge der beiden erzeugenden Arrays 0 beträgt oder nicht übereinstimmt, gibt die Funktion false zurück. |
$pers = array('Anna','Zoe');
ergibt
$alt = array(25,19); $persalt = array_combine($pers,$alt)
$persalt['Anna'] = 25;
$persalt['Zoe'] = 19; |
Funktion compact()erzeugt ein neues Array aus einzelnen Variablen. Als Argumente werden die Namen der Variablen ( ↔ Schlüssel) übergeben. |
$Anna = 25;
erzeugt aus den Variablen das Array
$Zoe = 19; $persalt = compact('Anna','Zoe');
$persalt['Anna'] = 25;
$persalt['Zoe'] = 19; |
Funktion extract()zerlegt ein Array in Variable (Das ist nur selten eine gute Idee.).Dabei wird mit Hilfe von → Konstanten entschieden, ob die Werte allenfalls bestehender Variablen überschrieben werden sollen. EXTR_OVERWRITE ↔ Variable erzeugen oder überschreiben EXTR_SKIP ↔ Variable nur dann erzeugen, wenn sie noch nicht existiert EXTR_IF_EXISTS ↔ Variable nur dann überschreiben, wenn sie bereits existiert. |
extract($persalt, EXTR_OVERWRITE);
erzeugt aus dem Array die Variablen
$Anna = 25;
$Zoe = 19; |
Funktion list()Führt die Zuweisung von ganzzahlig indizierten Array-Elementen an eine Liste von Variablen durch.Das funktioniert im ersten Fall, weil von der array-Anweisung die Indices [0] und [1] erzeugt werden. Es funktioniert nicht mit den Indices ['Dora'] oder ['Emil']. |
list($x,$y) = array(111,222);
ergibt die Variablen
list($a,$b) = array('Dora'=>33,'Emil'=>44);
$x=111; $y=222;
$a=NULL; $b=NULL; |
Suche nach Schlüsseln und Werten |
|
Funktion array_key_exists()Dient zur Feststellung, ob ein bestimmter Schlüssel existiert.Im Beispiel wird getestet, ob mindestens ein Element des Arrays $_GET den Schlüssel ['vn'] enthält. Wenn das zutrifft, dann wird eine Variable $x auf den Wert des Elements gesetzt, ansonsten wird ein Standardwert (default value) eingesetzt. Damit kann man z.B. → Globale Arrays wie $_GET oder $_POST bearbeiten. |
Beispiel mit dem
Globalen Array $_GET .
if(array_key_exists('farbe',$_GET)) {
$c = $_GET['farbe'];
}else { $c = '#F39'; } |
Funktion array_search()Dient zur Suche nach einem bestimmten Wert. Im Beispiel wird im Array $a nach dem Wert 'Bert' gesucht.Bei erfolgloser Suche wird false zurückgegeben (Achtung, in manchen Fällen evtl. auch die Zahl 0). Bei einem Treffer wird der Schlüssel zurückgegeben. Bei >1 Treffern wird der erste zutreffende Schlüssel zurückgegeben. |
$k = array_search('Bert',$a);
(Treffer, wenn $a[$k]=='Bert')
|
Funktion in_array()Eignet sich besser zur Feststellung, ob ein bestimmter Wert existiert.Im Beispiel wird getestet, ob mindestens ein Element des Arrays $a den Wert 'Chris' enthält. |
if(in_array('Chris',$a)) {
print 'in_array(Chris) = Y';
}else { print 'in_array(Chris) = N '; } |
Array-Pointer |
|
| Jedes Array verfügt über einen ArrayPointer. Dieser 'Zeiger' zeigt jeweils auf genau ein Element des Arrays. | In diesem Absatz werden einige Funktionen zur Steuerung des ArrayPointer vorgestellt. |
|
Anfangs-Position
Funktion reset()Nach der Erzeugung eines Arrays zeigt der ArrayPointer immer auf das erste Element des Arrays.Mit Funktion reset() können sie ihn jederzeit wieder dorthin setzen. |
$a = array(11,22,33,44,55);
reset($a); |
|
Aktuelle Position
Funktion key() gibt den
Schlüssel jenes Elements zurück, auf welches der
ArrayPointer gerade zeigt.Funktion current() gibt den Wert des aktuellen Elements zurück. Funktion pos() ist ein Alias zu current() (identisch mit anderem Funktionsnamen). |
$k = key($a);
ergibt anfangs das erste Element
$c = current($a); $k=0 $v=11
|
|
Bewegung
Funktion next()
setzt den ArrayPointer um +1 Element weiter und wird häufig innerhalb von
Schleifen verwendet.Funktion prev() setzt den ArrayPointer um -1 Element zurück Funktion reset() setzt den ArrayPointer auf das erste Element und wird dann verwendet, wenn man nach Durchlauf einiger/aller Elemente nochmals beim ersten Element beginnen will. Funktion end() setzt den ArrayPointer auf das letzte Element |
next($a);
ergibt
$k = key($a); $c = current($a); $k=1 $v=22
end($a);
ergibt
$k = key($a); $c = current($a); $k=4 $v=55
|
Funktion each()Die Funktion each() ist eine Kombination der Funktionen (key(), current(), next() ).Sie liefert für das aktuelle Element ein neues Array von je 4 Elementen und setzt danach den Array-Pointer auf das nächste Element des Arrays. Die Elemente [0] und ['key'] enthalten die Schlüssel, die Elemente [1] und ['value'] die Werte. |
reset($a);
ergibt
$ea = each($a);
$ea[0]=0 $ea['key']=0
$ea[1]=11 $ea['value']=11
bei Wiederholung
$ea = each($a);
ergibt das
$ea[0]=1 $ea['key']=1
$ea[1]=22 $ea['value']=22
|
|
Funktion each() wird vorwiegend in Schleifen über
Array-Elemente verwendet. Das Beispiel gibt alle Paare Schlüssel ↔ Wert eines Arrays (hier $a ) aus. ♦ Details in den Kapiteln Schlüssel & Wert und Array-Variable auf dieser Seite. |
while(list($k,$v) = each($d)) {
print "key=$k, value=$v <br />";
}
|
Arrays und Strings |
|
| Diese Funktionen dienen zum Aufbau und zur Zerlegung systematisch aufgebauter Texte, deren Teile durch bestimmte Trennzeichen getrennt sind. | Beispiele: Datei-Pfade, Internet-Adressen, Datum und Zeit (nach → ISO-Standard), usw. |
Funktion join()Erzeugt einen Text (string) aus den Elementen eines Arrays.Das erste Argument wird als Trennzeichen bzw. Trenn-String zwischen den einzelnen Elementen verwendet, das zweite bezeichnet das Array. Zahlen-Arrays werden automatisch in Strings umgewandelt. Wenn der Trenn-String leer ist, werden die Elemente direkt aneinander gesetzt. |
$j = array(77,88,99);
Das ist äquivalent zu
$t = join('-#-',$j); $t = $j[0].'-#-'.$j[1].'-#-'.$j[2];
und erzeugt diesen Text:
77-#-88-#-99
|
Funktion preg_split()Zerlegt einen Text (string) in Teile und gibt sie als Array zurück. Als Argument wird ein → Regulärer Ausdruck verwendet. Die Trennzeichen (bzw. Trenn-Strings) selbst werden bei der Aufspaltung unterdrückt.▲ Die Vorgänger-Funktionen split(), spliti() sind veraltet (deprecated) und sollten nicht mehr verwendet werden. ♦ Details zu Regulären Ausdrücken. |
$t = 'http://test/myweb/index.htm';
Liefert das Array $s mit 5 Elementen
$s = preg_split("/\//",$t); ('http:','','test','myweb','index.htm')
Hinweis: Das erste und das
letzte / Zeichen
begrenzen den Regulären Ausdruck. Dieser besteht lediglich aus dem
Zeichen / welches durch einen
vorangestellten \ BackSlash maskiert wird.
|
Funktion implode()Arbeitet so wie ↑ Funktion join() und verbindet die Elemente eines Arrays zu einem String. |
$j = array(77,88,99);
Das Beispiel gibt diesen Text aus:
$t = implode('-#-',$j); print("t=$t<br>"); 77-#-88-#-99
|
Funktion explode()Arbeitet in einfachen Fällen so wie Funktion split(), zerlegt einen Text (String) in Teile und gibt sie als Array zurück. Als Argument wird ein String verwendet. Die Trennzeichen (bzw. Trenn-strings) selbst werden bei der Aufspaltung unterdrückt. |
$t = 'http://test/myweb/index.htm';
Liefert das Array $s mit 5 Elementen
$s = explode('/',$t); ('http:','','test','myweb','index.htm')
|
|