SORU
6 Mart 2009, Cuma


Ne'in PHP bir dize başka bir dize ile biter mi?en verimli test

$str alt $test ile biten bir dize olup olmadığını test etmek için standart PHP yolu:

$endsWith = substr( $str, -strlen( $test ) ) == $test

En kısa yol bu mu?

CEVAP
6 Mart 2009, Cuma


Assaf söylediği doğru. PHP yerleşik bir işlevi tam olarak bunun için var.

substr_compare($str, $test, strlen($str)-strlen($test), strlen($test)) === 0;

Eğer $test $str PHP bir uyarı verecektir daha uzun, böylece ilk kontrol etmeniz gerekir.

function endswith($string, $test) {
    $strlen = strlen($string);
    $testlen = strlen($test);
    if ($testlen > $strlen) return false;
    return substr_compare($string, $test, $strlen - $testlen, $testlen) === 0;
}

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • FUzzyBUnnyBOoties

    FUzzyBUnnyBO

    3 EKİM 2007
  • Kai Moosmann

    Kai Moosmann

    5 Temmuz 2006
  • xiaoyu85

    xiaoyu85

    20 ŞUBAT 2010