PDA

View Full Version : Splitting linebreaks into paragraphs.


thesavior
08-20-2006, 03:13 AM
I have text that lets say looks something like this:


BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah
BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah

BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah

BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah
BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah
BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah


When you display that to the page it shows up something like this this:


BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlah


What I want it to do, is split apart every "paragraph" And put them into <p>s

So it would be like:


<p>BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah</p>
<p>BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah</p>
<p>BlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlahBlah</p>


So on so forth...

What would be the php code to do something like this?

mlseim
08-20-2006, 03:50 AM
You didn't mention if the "blah blah blah" was a text file or not.

This isn't "exactly" what you wanted, but maybe it will get you close.

Let's say that you have it saved as a text file called "blah.txt" ...

<?php

//Read Text File into an array ...
$filename="blah.txt";
$lines = array();
$fp = fopen($filename, "r");
$array1 = explode("\n", fread($fp, filesize($filename)));
fclose ($fp);

// Now you can analyze each line in the array and remove or
// change anything that is a "no-good" character using a function.
// Note, you'll change carriage returns to <br>.

$count_array=count($array1);
for ($i=0;$i<$count_array;$i++) {
//list ($id, $plant, $building, $person, $extension) = split ('\|', $array1[$i]);
$line = rteSafe($array1[$i]);
echo $line;
}

function rteSafe($strText) {
//returns safe characters
$tmpString = $strText;

//convert all types of single quotes
$tmpString = str_replace(chr(145), chr(39), $tmpString);
$tmpString = str_replace(chr(146), chr(39), $tmpString);
$tmpString = str_replace("'", "'", $tmpString);

//convert all types of double quotes
$tmpString = str_replace(chr(147), chr(34), $tmpString);
$tmpString = str_replace(chr(148), chr(34), $tmpString);
// $tmpString = str_replace("\"", "\"", $tmpString);

//replace carriage returns & line feeds
$tmpString = str_replace(chr(10), " ", $tmpString);
$tmpString = str_replace(chr(13), "<br>", $tmpString);

return $tmpString;
}

?>

thesavior
08-20-2006, 04:55 AM
Oh, sorry, I forgot to stay that it is stored in a mysql database.

chump2877
08-20-2006, 06:31 AM
You could try using nl2br (http://us3.php.net/manual/en/function.nl2br.php).....And that might be all you need...

Or you could do something like this:

$string_array = preg_split('/\n+||\r+/',$string);

foreach ($string_array as $val)
{
if (empty($val))
{
continue;
}
$new_string .= "<p>".trim($val)."</p>\n";
}

echo $new_string;