SORU
2 Mayıs 2012, ÇARŞAMBA


Neden in_array() bu dönüş gerçek (büyük) sayısal yanlış dizeleri?

Bu kod ile yanlış ne olduğunu almıyorum. Dönüyor "olmamalıdır.", Bulundu

$lead = "418176000000069007";
$diff = array("418176000000069003","418176000000057001");

if (in_array($lead,$diff))
    echo "Found";
else
    echo "Not found";

CEVAP
2 Mayıs 2012, ÇARŞAMBA


Sayı PHP, depolama sınırlamaları nedeniylebu bir hata idi ve PHP daha yeni sürümleri içinde düzeltilmesi çözüldü.

Değerleri PHP_INT_MAX geçemez.

* $lead 7*/print_rdeneyin ve tırnak kullanmadan $diff. Neden olacaktır

$lead ---> 418176000000070000  
$diff ---> Array ( [0] => 418176000000070000 [1] => 418176000000060000 )

bu durumda in_array sonuç çok doğru!

true 15 *üçüncü değişken ayarı tarafından* 14 strict karşılaştırma *çok

     if(in_array($lead,$diff,true)) //use type too
       echo "Found";
     else
       echo "Not found";
?>

Bu deneyin. Çalışacaktır.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Alexey - servant of Christ

    Alexey - ser

    15 EYLÜL 2007
  • Rachel Talbott

    Rachel Talbo

    26 Ocak 2011
  • FF Radioo

    FF Radioo

    14 ŞUBAT 2007