Thiemos Archiv
- Tuesday, 2004-06-08 10:02
- Das Schöne an PHP ist, dass es sich weiterentwickelt. Das Schlechte daran ist, dass Skripte, die z.B. var_export (PHP 4.2.0+), gd_info (PHP 4.3.0+), ob_get_clean (PHP 4.3.0+) oder str_split (PHP 5.0.0+) verwenden, mit älteren PHP-Versionen nicht mehr funktionieren. Meine Lösung für letzteres sieht wie folgt aus (PHP 3.0.9+):if (! function_exists('str_split'))Diese Lösung ist durchgetestet und tatsächlich etwa 4 mal schneller als ein "klassischer" Algorithmus ohne Regex.
{
function str_split($string, $split_length = 1)
{
if ($split_length < 1) return false;
preg_match_all('/.{1,' . (int)$split_length . '}/s',
$string, $matches);
return $matches[0];
}
}
Das sehr neue und noch sehr unvollständige Paket PEAR::PHP_Compat (obwohl mein Name im dortigen Changelog nicht auftaucht: str_split verwendet meinen Code) versucht, alle diese Sonderfälle allgemeingültig zusammenzufassen. Kommentare zu diesem Beitrag können per E-Mail an den Autor gesandt werden.