Felix Riesterer: alt="" zu allen <img> tags hinzufügen falls nicht vorhanden.

Beitrag lesen

Liebe(r) ich,

$temp=preg_replace('/\<img(.*)(?!alt\=".*?")/i','<img alt=""$1',$temp);

das ist ungenügend. Im Grunde bräuchtest Du lookahead oder lookbehind, um festzustellen, dass am Ende Deines Tags kein alt-Attribut enthalten ist/war, um es dann nachträglich zu ersetzen.

Ich versuche etwas ins Blaue hinein (also ungetestet):

$gefunden = preg_match_all('~(?is)<img (?:(?!alt=").)+/?>~', $html, $imgs);  
  
if ($gefunden) {  
    foreach ($imgs[1] as $img) {  
        $img_alt = str_replace('<img ', '<img alt="" ', $img);  
        $html = str_replace($img, $img_alt, $html);  
    }  
}

Liebe Grüße,

Felix Riesterer.

--
ie:% br:> fl:| va:) ls:[ fo:) rl:° n4:? de:> ss:| ch:? js:) mo:} zu:)