Metin Mesajlaşma için 160 Karakter Adet içine bir Paragraf Yarma

3 Cevap php

Ben metin paragrafı alarak ve çoklu metin mesajlarında göndermek için kelime / cümle üzerinde bölme mantığı ile sorun yaşıyorum. Her metin mesajı sadece maksimum 160 karakter olabilir. Ben temiz bir paragraf yukarı kırmak istiyorum.

İşte çözüm (teşekkürler Leventix!):

public static function splitStringAtWordsUpToCharacterLimit($string, $characterLimit) {
    return explode("\n", wordwrap($string, $characterLimit));
}

3 Cevap

Sen yenisatırlar tarafından explode sonra, wordwrap kullanabilirsiniz.

Bu kullandığım fonksiyonu,

function sms_chunk_split($msg) {
   $msg = preg_replace('/[\r\n]+/', ' ', $msg);
   $chunks = wordwrap($msg, 160, '\n');
   return explode('\n', $chunks);
}

Bu 160-byte parçalar, sözcük sınırlarının yarmaya bir diziye uzun bir SMS mesajı böler.

Neden hiç burada normal bir ifade kullanmak gerekir!?

Yapmanız gereken olacağını metin mesajlarının ancak birçok parçaya dize bölmek olduğunu. böylece length($string)/$charmax ve sonra sadece bir diziye birçok kez substrine yok (benim PHP paslı, tam sözdizimi hatırlayamıyorum) gibi bir şey yapmak ve bu diziyi dönecekti