PHP Function to Convert LineBreaks to NewLines

 –  Comments Off on PHP Function to Convert LineBreaks to NewLines

While PHP has a very nice little function (nl2br) to convert newlines (\n) to line breaks (<br>), moving in the opposite direction is not quite so easy. This function should hopefully help to allow you to convert line breaks to new lines.

<?php

/* This function will convert line breaks or other tags passed in the $tags variable
to linebreaks.  Multiple $tags must be separated by spaces, and must consist of the
regular tag text.  Ie. $result = br2nl($text_to_filter, "br p blockquote") */
function br2nl($text, $tags = "br")
{
 $tags = explode(" ", $tags);

 foreach($tags as $tag)
 {
 $text = eregi_replace("<" . $tag . "[^>]*>", "\n", $text);
 $text = eregi_replace("</" . $tag . "[^>]*>", "\n", $text);
 }

 return($text);
}

// Usage:
 $text_to_filter = "<p>This is my <br>sample<br>text.  The default code listed here " .
"should replace the br's with new lines.</p><p>The second example is more advanced, " .
"stripping out both the BR's as well as the P tags.</p>";

 // Example of replacing BR tags (default)
 $result = br2nl($text_to_filter);
 echo "<pre>$result</pre>";

 // Example of replacing both BR and P tags
 $result = br2nl($text_to_filter, "br p");
 echo "<pre>$result</pre>";

?>

Related Reading:

PHP and MySQL Web Development (5th Edition) (Developer's Library)PHP and MySQL Web Development (5th Edition) (Developer's Library)

PHP and MySQL Web Development, Fifth Edition

The definitive guide to building database-driven We... Read More >

Murach's PHP and MySQL (3rd Edition)Murach's PHP and MySQL (3rd Edition)

“I can’t count how many PHP books I have purchased over the years trying to learn the language. Murach’s was the first book that helped me gr... Read More >

Head First PHP & MySQL: A Brain-Friendly GuideHead First PHP & MySQL: A Brain-Friendly Guide

If you're ready to create web pages more complex than those you can build with HTML and CSS, Head First PHP & MySQL is the ultimate learning guide ... Read More >

Filed in: Code Snippets

Comments are closed.