hatschi1810
Angesehenes Mitglied
Wie wäre es, wenn hier Leute mal kleine selbstgemachte Funktionen Posten, die ihnen das Leben erleichtern?
Die Idee ist mir gerade nach einer kleinen Funktion gekommen.
Bsp.:
Funktion um einen String nach bestimmten Tags aufzusplitten. Die ist zwar für einen speziellen Fall zugeschnitten, aber es sollte nicht schwer sein die für etwas anzupassen. Die Links im Beispiel sind frei erfunden.
Die Performance könnte sicher erhöht werden, da ich aber das Ergebnis cache kann ich mit der Variante leben.
Code:
CODE
$text='<Link>http://www.orf.at?i=1||ORF<Link>'
.'http://www.fm4.orf.at?u=a||FM4||info=test'
.'<Link>http://www.fm4.orf.at||Text<Link>'
.'http://www.fm4.orf.at||Text2';
/**
* @return string
* @param string, $text Linklist
* @desc teilt Linkliste am tag <Link>, ||Parameter ||Linkname
*/
function linklist_show($text){
$sText='';
$sExplode=explode('<Link>',$text);
if (count($sExplode)>1){
for ($i=1;$i<count($sExplode);$i++){
$aLink=explode('||',$sExplode[$i]);
//$aLink[0] Url
//$aLink[1] Text
//$aLink[1] Parameter
$aUrl=explode('?',$aLink[0]);
$sUrl=$aUrl[0];
if ($aLink[2]!=''){
$sUrl.='?'.$aLink[2];
if ($aUrl[1]!=''){
$sUrl.='&'.$aUrl[1];
}
}elseif ($aUrl[1]!=''){
$sUrl.='?'.$aUrl[1];
}
$sReturn.='<a href="'.$sUrl.'">'.$aLink[1].'</a><br>';
} // END for ($i=1;$i<count($sExplode);$i++){
} // END if (count($sExplode)>1){
return $sReturn;
}
echo "<br><b>Test:</b>".linklist_show($text);
Die Idee ist mir gerade nach einer kleinen Funktion gekommen.
Bsp.:
Funktion um einen String nach bestimmten Tags aufzusplitten. Die ist zwar für einen speziellen Fall zugeschnitten, aber es sollte nicht schwer sein die für etwas anzupassen. Die Links im Beispiel sind frei erfunden.
Die Performance könnte sicher erhöht werden, da ich aber das Ergebnis cache kann ich mit der Variante leben.
Code:
CODE
$text='<Link>http://www.orf.at?i=1||ORF<Link>'
.'http://www.fm4.orf.at?u=a||FM4||info=test'
.'<Link>http://www.fm4.orf.at||Text<Link>'
.'http://www.fm4.orf.at||Text2';
/**
* @return string
* @param string, $text Linklist
* @desc teilt Linkliste am tag <Link>, ||Parameter ||Linkname
*/
function linklist_show($text){
$sText='';
$sExplode=explode('<Link>',$text);
if (count($sExplode)>1){
for ($i=1;$i<count($sExplode);$i++){
$aLink=explode('||',$sExplode[$i]);
//$aLink[0] Url
//$aLink[1] Text
//$aLink[1] Parameter
$aUrl=explode('?',$aLink[0]);
$sUrl=$aUrl[0];
if ($aLink[2]!=''){
$sUrl.='?'.$aLink[2];
if ($aUrl[1]!=''){
$sUrl.='&'.$aUrl[1];
}
}elseif ($aUrl[1]!=''){
$sUrl.='?'.$aUrl[1];
}
$sReturn.='<a href="'.$sUrl.'">'.$aLink[1].'</a><br>';
} // END for ($i=1;$i<count($sExplode);$i++){
} // END if (count($sExplode)>1){
return $sReturn;
}
echo "<br><b>Test:</b>".linklist_show($text);