SORU
23 EYLÜL 2008, Salı


Birleştirme, Performans php String

Java ve C gibi diller# dizeleri değişmez ve hesaplama açısından bir anda bir dize bir karakter oluşturmak için pahalı olabilir. Dedi ki dilde, C# System.Text.StringBuilder java.lang.StringBuilder Java gibi bu maliyeti azaltmak için kütüphane sınıfları vardır.

Php (4 veya 5; ikisi de ilgileniyorum) bu sınırlama paylaşıyor mu? Eğer öyleyse, sorun mevcut benzer çözümler var mı?

CEVAP
23 EYLÜL 2008, Salı


Hayır, dizeleri değişken olduğundan PHP stringbuilder sınıfı türü vardır.

Bu varlık, bir dize binanın farklı yolları vardır, ne yaptığına bağlı. " dedi.

echo, örneğin, çıkış için virgülle ayrılmış belirteçleri kabul eder.

// This...
echo 'one', 'two';

// Is the same as this
echo 'one';
echo 'two';

Bu ne demek, aslında daha yavaş olurdu birleştirme, kullanmadan karmaşık bir dize çıktı

// This...
echo 'one', 'two';

// Is faster than this...
echo 'one' . 'two';

Eğer bir değişken bu çıkışı yakalamak için ihtiyacınız varsa, output buffering functions ile yapabilirsiniz.

Ayrıca, PHP dizi performans gerçekten çok iyi. Eğer değerleri virgülle ayrılmış listesi gibi bir şey yapmak istiyorsanız, hemen patlak kullanın()

$values = array( 'one', 'two', 'three' );
$valueList = implode( ', ', $values );

Son olarak, PHP's string type ile tanışın emin olun ve farklı sınırlayıcı ve her birinin ne anlama geldiği.

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

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Elly Awesome

    Elly Awesome

    15 ŞUBAT 2010
  • EmperorTigerstar

    EmperorTiger

    14 EYLÜL 2009
  • sghaff1

    sghaff1

    23 Mart 2009