Zitat:
Zitat von Mother-Brain vllt. ne einfache if Abfrage, ob das current_beschreibung zu einem "<acronym title=" werden würde?
So gut sind meine PHP Kentnisse leider auch nicht mehr, aber vllt. ist es ja nen Ansatz |
Hallo Mother Brain, danke für deine Antwort. Die Idee ist garnicht mal so schlecht. Allerdings müsste ich dann, (korrigiere mich wenn ich mich irre), eine verschachtelte Schleife bauen die bei jedem generieren eines Tags erneut schauen muss die Beschreibung, Begriffe aus der Liste enthält. Das würde unter Umständen ziemlich lange dauern da die Liste ziemlich groß ist und stetig wächst.
Ich habe mir derzeitig eine Notlösung gebaut. Ist zwar nicht die feine englische Art aber funktioniert. (Falls es wen interessieren sollte)
PHP-Code:
function fillWithAcronyms($all,$begriff,$besch,$pos=0){
$pos_begriff = stripos($all, $begriff,$pos);
if($pos_begriff===false)
return $all;
else
{
$pos_acstart = strripos(substr($all,0,$pos_begriff), '<acronym title="');
$pos_acend = strripos(substr($all,0,$pos_begriff), '</acronym>');
}
if($pos_acstart===false && $pos_acend===false)
{
$all=substr_replace($all, '<acronym title="'.$besch.'">'.$begriff.'</acronym>', $pos_begriff, strlen($begriff));
$all=fillWithAcronyms($all,$begriff,$besch,$pos_begriff);
}
elseif($pos_acstart!==false && $pos_acend!==false)
{
if($pos_acstart < $pos_acend)
{
$all=substr_replace($all, '<acronym title="'.$besch.'">'.$begriff.'</acronym>', $pos_begriff, strlen($begriff));
$all=fillWithAcronyms($all,$begriff,$besch,$pos_begriff);
}
else
$all=fillWithAcronyms($all,$begriff,$besch,$pos_begriff+strlen($begriff));
}
return $all;
}
Würde mich allerdings trotzdem über eine Lösung mit regulären Ausdrücken freuen.
mfg sofl