| | | | |
| | |
| Erfahrener Benutzer Registriert seit: 15.10.2005
Beiträge: 231
![]() | in folgender kombination aus preg_match_all() und foreach() wird der foreach() part einmal zu oft durchlaufen, wobei beim letzten durchlauf alle felder leer sind. warum? welche abhilfe gibt es? Code: if ($row->textwriter) {
$pattern = '
/ # Delimiter
(?:(.*?))? # AGSzabo
(?:@(.*?))? # Dilandau
(?:\[(.*?)\])? # Andreas G. Szabo
(?:\{(.*?)\})? # München
(?:@(.*?))? # Dilandau zweite mögliche position
(?:\/(.*?))? # Schneidersitz
(?:\((.*?)\))? # was in den klammern ist
(?:,|$) # komma muss trennend vorhanden sein
/isx';
preg_match_all($pattern, $row->textwriter, $array, PREG_SET_ORDER);
$lincol = $linecolor;
echo '<tr class="',$linecolor,'"><td class="label">';
echo 'Text';
echo '</td><td>';
echo '<table class="inner" cellspacing="0" cellpadding="0"><tr class="innerheadrow">
<td>By</td><td>Text</td><td>Of</td><td>Realname</td><td>Origin</td>
</tr>';
################################
############ HIER ###############
################################
foreach($array as $line) {
$linecolor = switchcolor($linecolor);
echo '<tr class="',$linecolor,'">';
echo '<td>',$line[1],'';
if (!$line[2]) $line[2] = $line[5];
if ($line[2]) echo ', aka ',$line[2],'';
echo '</td>';
echo '<td>',$line[7],'</td>';
# gruppe(n)
if (!$line[6]) $line[6] = $row->gruppe;
$ind = 0;
$names = explode('&', $line[6]);
foreach($names as $name) {
if ($name) $names[$ind] = ''.$name.'';
$ind++;
}
$name = implode(', ', $names);
echo '<td>',$name,'</td>';
# Realname und Origin
if ($line[3]) $line[3] = "****";
echo '<td>',$line[3],'</td>';
echo '<td>',$line[4],'</td>';
echo '</tr>';
}
####################################
############### BIS HIER ############
####################################
echo '</table>';
echo '</td></tr>';
# restore previous state
$linecolor = switchcolor($lincol);
}
|
| |
| | |
| PHP Code Flüsterer Registriert seit: 21.08.2005 Beiträge: 4682 PHP-Kenntnisse: Fortgeschritten | |
| | |
| Erfahrener Benutzer Registriert seit: 15.10.2005
Beiträge: 231
![]() | ich habe doch die letzte zeile mit ?: von den ergebnissen ausgeklammert. so sehe ich darin ein problem von php und wuesste gerne wie ich vom array manuell den letzten eintrag streichen kann?
__________________ mobilis in mobili |
| |
| | ||||
| Gast
Beiträge: n/a
| Zitat:
Code: (?:,|$) # komma muss trennend vorhanden sein http://test.php-help.info/test/29/ (Quelltext wird angezeigt) Zitat:
Zitat:
| |||
| Themen-Optionen | |
| Thema bewerten | |
|
|
Ähnliche Themen | ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Eindimensionales Array ohne index per foreach erstellen | phpbeginner | PHP Tipps 2008 | 4 | 10.03.2008 14:18 |
| foreach equivalent aber mit Datenmanipulation | Matt | PHP Tipps 2008 | 2 | 26.02.2008 16:47 |
| Lambda-Funktion und array_map/_filter gegen foreach | KingCrunch | PHP Tipps 2007 | 5 | 29.04.2007 10:28 |
| foreach verändert die werte des arrays das durchlaufen wird | Crypi | PHP Tipps 2007 | 5 | 10.01.2007 08:24 |
| foreach mit zwei übergebenen Arrays ? [erledigt] | horstenpeter | PHP Tipps 2006 | 1 | 03.09.2006 16:47 |
| foreach -> key | snatch-ic | PHP Tipps 2006 | 3 | 18.08.2006 11:58 |
| nicht-numerisches-array durchlaufen und dabei auf nächstes.. | Crypi | PHP Tipps 2006 | 7 | 16.08.2006 08:38 |
| durch foreach auch normalen String durchlaufen lassen | PHP Tipps 2006 | 7 | 14.01.2006 13:20 | |
| $_FILES mit foreach() | PHP Tipps 2005-2 | 5 | 20.10.2005 10:27 | |
| foreach: Fehler beim ersten Aufruf | mristau2k5 | PHP Tipps 2005-2 | 3 | 15.08.2005 23:14 |
| foreach probleme | PHP Tipps 2005 | 7 | 26.04.2005 17:54 | |
| foreach: Übergabe by reference | Stümper | PHP Tipps 2005 | 2 | 15.02.2005 15:35 |
| for / foreach problem | PHP-Fortgeschrittene | 4 | 19.11.2004 16:58 | |
| 2 Schleifen durchlaufen | PHP Tipps 2004 | 1 | 14.09.2004 14:33 | |
| foreach problem | mAy^daY | PHP Tipps 2004 | 3 | 02.06.2004 20:29 |
| Besucher kamen über folgende Suchanfragen bei Google auf diese Seite |
| foreach array letztes leer, foreach php zu oft durchlaufen, php foreach komma nicht beim letzten eintrag, seinisx |

Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.