Mailinglisten-Archive |
Peter Bieling wrote:
> Hallo zusammen,
>
> kennt jemand eine saubere Möglichkeit, so etwas zu realisieren, ohne
> dass es in PHP4 eine Fehlermeldung gibt?
>
> if (version_compare(PHP_VERSION, "5.0.0", "<") > 0) {
> $pdfcopy = $pdf;
> } else {
> $pdfcopy = clone $pdf;
> }
So:
if (... php5 ...) $clonefunc =create_function('$a','return clone $a;');
else $clonefunc =create_function('$a','return $a;');
$pdfcopy =$clonefunc($pdf);
Das ist besser als eval, da eval sehr langsam ist. Ausserdem ist eval
auch gerne mal gesperrt. Die Lösung mit create_function ist auf meinem
System ca. 3 mal so schnell wie die Lösung mit eval, wenn ich
create_function für jeden $clonefunc-Aufruf neu aufrufe ist die Lösung
3x so schnell. Wenn ich create_function nur einmal aufrufe, dann noch
wesentlich schneller. Bei 10.000 Iterationen um ungefähr das 30-fache.
>
> Viele Grüße
>
> Peter
Yannik
php::bar PHP Wiki - Listenarchive