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

  • HBO

    HBO

    17 Mayıs 2006
  • HowcastSportsFitness

    HowcastSport

    11 Mayıs 2011
  • MrRandomSong

    MrRandomSong

    29 Kasım 2009