Biz dosyanın revizyon geçmişini görmek gerekir ama bazı olasılıklar şunlardır:
- Bu kademeli işlevsellik elimden ama asla temizlenmiş bir önceki algoritmanın kalıntıları vardır.
- Hepimizin kötü bir gece sonra üretmek tipik spagetti kod.
- Büyük giriş dizeleri için kod hızlandıran bir optimizasyon bulunuyor.
Bunların hepsi eş anlamlı bulunmaktadır:
<?php
$packed = pack('N*', 100, 200, 300);
// 1
var_dump( unpack('N*', $packed) );
// 2
var_dump( unpack('N*', substr($packed, 0, 4)) );
var_dump( unpack('N*', substr($packed, 4, 4)) );
var_dump( unpack('N*', substr($packed, 8, 4)) );
// 3
var_dump( unpack('N', substr($packed, 0, 4)) );
var_dump( unpack('N', substr($packed, 4, 4)) );
var_dump( unpack('N', substr($packed, 8, 4)) );
?>
Ben üç tamsayılar ile tipik tekrar-bir-bin kere kriter yaptım ve 1 yol hızlıdır. Ancak, 10.000 tamsayılar ile benzer bir test 1 yavaş olduğunu gösterir: -!
0.82868695259094 seconds
0.0046610832214355 seconds
0.0029149055480957 seconds
Performans bir zorunluluktur bir tam metin motoru olan, ben bir optimizasyon söylemek cesaret ediyorum.