文字列を500文字で配列に分割するタスクです。私はstr_splitでこれを行いましたが、問題があります。もちろん、それは言葉で吐き出されなければならない、そうでなければ、このテキストは読めない。それ以上のこと。このテキストにはリンクが付いていて、リンクを分割するとリンクが壊れます(つまり、すべてのHTML)=)だから、タグが終了した場合、またはまだ開始していない場合でも分割を開始する必要があります。 ±100文字は問題ではありません。PHP:ワードとタグによる正確な文字列の配列への分割
私は本当にそれを行うコードをいただければ幸いです。私は正規表現ではあまりよくありません。
EDIT:例
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Donec ac diam non nisl interdum tempus. Nam id ipsum id nunc tempus varius. Suspendisse ut neque a velit elementum placerat. Curabitur lobortis, lorem sit <a href="#">amet tincidunt ultricies,</a> eros ante feugiat dui, sit amet lacinia metus risus a magna. Duis velit dui, sollicitudin at aliquet et, elementum at dui. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae;
スクリプト:
<?php
$str = "Lorem ipsum dolor sit amet, consectetur adipiscing elit. <a href=\"http://example.com\">Phasellus condimentum
facilisis ipsum</a>, quis elementum urna ornare non. Cras nisi libero, dapibus sed euismod id, pharetra eu libero.
Maecenas mi nulla, ultrices in congue in, viverra ac massa. Quisque <br/>at turpis nulla. Suspendisse semper urna eu
augue aliquet dictum. Mauris at purus in lectus varius bibendum. <em>Fusce hendrerit <strong>posuere ante</strong></em>,
at pellentesque odio lobortis at. Integer quis urna eget ipsum dictum volutpat quis et leo. Etiam hendrerit eleifend
ornare. Phasellus eget justo elit.";
$str = str_split($str, 200);
var_dump($str);
出力:
array(4) {
[0]=>
string(200) "Lorem ipsum dolor sit amet, consectetur adipiscing elit. <a href="http://example.com">Phasellus condimentum
facilisis ipsum</a>, quis elementum urna ornare non. Cras nisi libero, dapibus sed euismod "
[1]=>
string(200) "id, pharetra eu libero.
Maecenas mi nulla, ultrices in congue in, viverra ac massa. Quisque <br/>at turpis nulla. Suspendisse semper urna eu
augue aliquet dictum. Mauris at purus in lectus varius bi"
[2]=>
string(200) "bendum. <em>Fusce hendrerit <strong>posuere ante</strong></em>,
at pellentesque odio lobortis at. Integer quis urna eget ipsum dictum volutpat quis et leo. Etiam hendrerit eleifend
ornare. Phasellus"
[3]=>
string(17) " eget justo elit."
}
これは、[単語の半分は$ strのに来る、過酷な文字の分割です1]。そして、もしそれがその場所の右のリンクだったら、それは壊れてしまうでしょう。
はあなたが爆発みました(」」、$文字列):次のコードのようなものがよく、あなたがやりたいこと? – Aston
私は本当にいくつかのサンプルデータに感謝します:) –
*本当に* HTMLタグをそのままにする必要がありますか? –