Hi Matt,
I suppose that if you have nelines in your data which give you both the linebreack, as the paragraphs, you could 'explode' your text by two sets of <br><br>.
In the case below, you set the $maxsize to the maximum lengh (In characters) of the text you want to display. The for loop will check wether the length of the output is less then the maximum defined. If so, it will add another paragraph. Otherwise i will go and display it.
On the other hand you could of course just retrieve a specific number of paragraphs.
Have a try with the script pasted below. You get the text with your database retrieval routine, and insert it in $allcontent.
$delimiter = "<br><br>";
$maxsize = 500;
$allcontent = nl2br($allcontent);
$paragraphs = explode($delimiter, $allcontent);
$i=0;
$output = "";
for($size<$maxsize; $size=0; $i <= n_elements($paragraphs))
{
$output .= $paragraphs[$i];
$size = str_len($output);
$i++
}
echo $i;
echo $output;