werte aus String in Array speichern
Markus89
- php
Hi
Ich habe in einer PHP-Variable den Quellcode einer Tabelle gespeichert.
zB:
$string_tabelle = '
<table>
<tr>
<td>Text1</td>
<td>Text2</td>
<td>Text3</td>
<td>Text4</td>
<td>Text5</td>
<td>Text6</td>
<td>Text7</td>
<td>Text8</td>
<td>Text9</td>
</tr>
</table>
';
Wie kann ich nun die einzelnen Inhalte der Zellen einzeln in ein Array speichern?
Danke für eure Hilfe.
mfg Rene
Hallo,
Wie kann ich nun die einzelnen Inhalte der Zellen einzeln in ein Array speichern?
auf Anhieb würde ich sagen "benutze dafür die DOM-Funktionen oder die Simple-XML-Funktionen oder die XML-Funktionen".
Vielleicht ist die Keule da aber auch zu groß.
Wenn in den <td> wirklich immer nur Text steht wird sicher auch eine RegExp reichen, damit kenn ich mich aber nicht aus.
Grüße, Matze
Danke für deine Hilfe
Ich würde es gerne in PHP bearbeiten bevor ich die Seite ausgebe.
Die Möglichkeit mit JavaScript/DOM ist mir bekannt nur ich möchte ohne JS arbeiten.
mfg
Hi,
Ich würde es gerne in PHP bearbeiten bevor ich die Seite ausgebe.
Dann mach das.
Die Möglichkeit mit JavaScript/DOM ist mir bekannt nur ich möchte ohne JS arbeiten.
Dann mach das.
MfG ChrisB
Hi!
Ich würde es gerne in PHP bearbeiten bevor ich die Seite ausgebe.
Du darfst die Dir angebotenen Links gerne benutzen - das ist deren Sinn;)
Alle hier genannten Möglichkeiten beziehen sich auf PHP!
IMHO reicht aber auch eine Kombination von str_replace und explode, falls Du Deinen Anwendungsfall im Ursprungsposting nicht zu sehr simplifiziert hast.
off:PP
Hello,
Ich würde es gerne in PHP bearbeiten bevor ich die Seite ausgebe.
Die Möglichkeit mit JavaScript/DOM ist mir bekannt nur ich möchte ohne JS arbeiten.
Man kann einen DOM-Parser natürlich auch innerhalb von PHP starten.
Das ist nicht derselbe Parser, wie im Browser, aber einer mit gleichen oder ähnlichen Funktionen :-)
http://de2.php.net/manual/en/book.xml.php
http://de2.php.net/manual/en/refs.xml.php
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg
Hello,
Ich habe in einer PHP-Variable den Quellcode einer Tabelle gespeichert.
<?php ### simple_template.php ###
header('Content-Type: text/html');
$string_tabelle = '
<table>
<tr>
<td>Text1</td>
<td>Text2</td>
<td>Text3</td>
<td>Text4</td>
<td>Text5</td>
<td>Text6</td>
<td>Text7</td>
<td>Text8</td>
<td>Text9</td>
</tr>
</table>
';
# Wie kann ich nun die einzelnen Inhalte der Zellen einzeln in ein Array speichern?
$_output = array();
$_output['Text1'] = 'Hans';
$_output['Text2'] = 'Mustermann';
$_output['Text3'] = 'Karlstraße';
$_output['Text4'] = '55555';
$_output['Text5'] = 'Musterstadt';
$_output['Text6'] = '01234/555678';
$_output['Text7'] = 'hans.mustermann@domain.tld';
$page = str_replace(array_keys($_output),$_output, $string_tabelle);
echo $page;
?>
Einfacher geht es nicht.
Jetzt musst Du nur dafür sorgen, dass die zu ersetzenden Strings mindestens ein Zeichen enthaltebn, das für das normale HTML-Dokument nicht benutzt wird, dann ist es sogar sehr zuverlässig.
str_replace wird strikt der Reihe nach abgearbeitet. Du kannst also witer vorne im Array Platzhelter einsetzen, die selber wieder Platzhalter enthalten. Diese werden dann anschließend auch ersetzt, wenn es einen Eintrag dafür gibt. Auf diese Weise kann man z.B. komplexe Table-in_Table-Konstrukte erzeugen (die Sinnhaftigkeit mal außen vor), ohne die Übersicht zu verlieren.
Liebe Grüße aus dem schönen Oberharz
Tom vom Berg