note 85527 deleted from language.oop5.typehinting by nikic

From: Date: Sun, 01 Nov 2020 21:48:41 +0000
Subject: note 85527 deleted from language.oop5.typehinting by nikic
References: 1  Groups: php.notes 
Request: Send a blank email to php-notes+get-215686@lists.php.net to get a copy of this message
Note Submitter: kalkamar at web dot de ---- I really like the Daniel`s Typehinting-Class, but you please not that it may be relevant for the performance if you use Typehinting for scalar values very often. Here is my performance-test: <?php function notypehinting($x) { is_string($x); //checking the type manually instead } function typehinting(string $x) { } $test=new timer; for($i=0;$i<10000;$i++) { try{ notypehinting('test'); } catch(Exception $e){} } echo $test.'<br>'; $test2=new timer; for($i=0;$i<10000;$i++) { try{ typehinting('test'); } catch(Exception $e){} } echo $test2.'<br>'; ?> Output: 0.0088460445404053 0.21634602546692 Result: typehinting() ist more than 20 times slower than notypehinting() You see: typehinting for scalar types (like suggested by Daniel) is not the best thing for the performance if you use it very often.

« previous php.notes (#215686) next »