Hallo liebe Selferinnen und Selferaußen,
ich habe mich den ganzen Tag abgemüht, eine möglichsta vernünftige Lösung für das Aufspüren von <img>-Tags bzw. der darin enthaltenen src zu finden. Nach verschiedensten Vorlagen und mit viel Probieren *äh* Überlegen meine ich natürlich, ist eine "Lösung" herausgekommen.
<!-- snip here -->
<?php #### related001.php ####
$src1 = "smiley.bmp";
$src2 = "SmileyAtNight.bmp";
$src4 = "SmileyAtNight4.bmp";
$html =
"<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<HTML>
<HEAD>
<TITLE></TITLE>
<META NAME="Generator" CONTENT="TextPad 4.4">
<META NAME="Author" CONTENT="?">
<META NAME="Keywords" CONTENT="?">
<META NAME="Description" CONTENT="?">
</HEAD>
<BODY BGCOLOR="aliceblue" TEXT="#000000">
<TABLE ALIGN="left" BORDER=0 CELLSPACING=2 CELLPADDING=8 WIDTH="650px">
<TR ALIGN="left" VALIGN="middle"></TR>
<TR ALIGN="left" VALIGN="middle">
<TD><img src="$src1"> </TD>
<TD> Beispieltext, der hier nur steht damit es nach was aussieht !!!!!</TD>
</TR>
<TR ALIGN="left" VALIGN="middle">
<TD></TD>
<TD> Beispieltext, der hier nur steht damit es nach was aussieht !!!!!</TD>
</TR>
<TR ALIGN="left" VALIGN="middle">
<TD> Beispieltext, der hier nur steht damit es nach was aussieht !!!!!</TD>
<TD><img src="$src2"> </TD>
</TR>
<TR ALIGN="left" VALIGN="middle">
<TD> Beispieltext, der hier nur steht damit es nach was aussieht !!!!!</TD>
<TD><img src="$src2" width="50px"> </TD>
</TR>
<TR ALIGN="left" VALIGN="middle">
<TD> Beispieltext, der hier nur steht damit es nach was aussieht !!!!!</TD>
<TD><img src='$src4' width="50px"> </TD>
</TR>
</TABLE>
</BODY>
</HTML>";
#echo "$html";
################## Beginn der relevanten Zeile ###############
preg_match_all ("/<img[^>]+(src="([^"<>']+)"|src='([^"<>']+)')[^<>]*>/", $html, $out, PREG_PATTERN_ORDER);
################## Ende der relevanten Zeile #################
echo "<pre>";
print_r ($out);
echo "</pre>";
?>
<!-- snap and copy/paste here -->
Kann man das etwas eleganter machen? Wir haben in unseren html-Dateien die src immer in Häkchen. Manchmal in einfachen und manchmal in doppelten eben. Ich hätte nun möglichst gerne eine Lösung, die beide Fälle (einfache und doppelte Häkchen) verträgt und das Ergebnis möglichst in EINEM Array liefert.
Wir müssen unsere Websites per eMail verschicken, so dass sie offline lesbar sind. Im Prinzip müssten da wohl sogar alle Sources gesucht, base64-encoded und als related multipart verpackt werden.
Gibts da eine bessere Lösung die relativ sicher, also meistens, funktioniert?
Liebe Grüße
Chris (C)