The challenge is to split the string into 500 characters into an array. I did this with str_split, but I have a problem. Of course, this should be caused by words, otherwise this text is not readable. And more than that. This text contains links, and links will be broken if I decompose them (infact any html) =) Therefore, I need to start splitting only if the tag has ended or has not even started ... the same goes for words. ± 100 characters is not a problem.
I would be very grateful for the code to do this. I am not very familiar with regular expressions.
EDIT: Example
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;
Script:
<?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);
Conclusion:
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."
}
This is harsh, half the word comes to $ str [1]. And if it was a link, then it would be spoiled.