Formatting strings in PHP
Tutos - 28/07/2015
The different snippets that we will see apply to a string and are:
- Add line breaks in HTML to each line in a text
- Put a line break to a string after a certain length (cutting the words or not ...)
- Add spaces in HTML
- Put all the letters in capital
- Put all the letters in lower case
- Put the first letter capitalized and all other in lowercase
- Put all the initial letters capitalized and the rest lowercase for each word
Add line breaks in HTML to each line in a text
This code will be useful for example when you use a textarea and you want to show the content in HTML later. If you try to display it directly, there will be no line break and the text will be displayed as a single block.To display line breaks in HTML, just use the PHP function
nl2br
, which replaces line breaks characters \n
and \r
to line breaks in HTML <br>
.Examples using the
nl2br
function:
// Example #1
$string = "Line 1\nLine 2\nLine 3";
echo nl2br($string);
// Example #2
$string = "Line 1
Line 2
Line 3";
echo nl2br($string);
Put a line break to a string after a certain length
To put line breaks to a string after a specific length, just use the PHP functionwordwrap
.The first parameter is the string and the second the length desired.
The third parameter is the the line break type. It is optional and its default value is
\n
. If you want to display the text in question in HTML, it is better to immediately put <br>
. Otherwise you will have to go later through the nl2br
function.The fourth and final parameter is an optional Boolean indicating whether the words should be cut or not if the length is reached before completion.
$string = "This is the text that we will cut with this looooooooooong word.";
echo "#1 :".wordwrap($string, 10)."<br>";
echo "#2 :".wordwrap($string, 10, "<br>")."<br>";
echo "#3 :".wordwrap($string, 10, "<br>", true)."<br>";
Result:
#1 :This is the text that we will cut with this looooooooooong word.
#2 :This is
the text
that we
will cut
with this
looooooooooong
word.
#3 :This is
the text
that we
will cut
with this
looooooooo
oong word.
Add spaces in HTML
The HTML space character is very simple, it's
. You can put as much as of it that you want to make a tab for example. It remains, however, recommended to use the style margin
, padding
or text-indent
.Put all the letters in capital
$string = "Here is a SMALL test sentenCE.";
echo strtoupper($string);
The result will be:
HERE IS A SMALL TEST SENTENCE.
Put all the letters in lower case
$string = "Here is a SMALL test sentenCE.";
echo strtolower($string);
The result will be:
here is a small test sentence.
Put the first letter capitalized and all other in lowercase
$string = "Here is a SMALL test sentenCE.";
echo ucfirst($string);
The result will be:
Here is a small test sentence.
Put all the initial letters capitalized and the rest lowercase
$string = "Here is a SMALL test sentenCE.";
echo ucwords($ string);
The result will be:
Here Is A Small Test Sentence.
Note that special characters such as 'é', 'à', 'ù' or 'è' are not converted.
However, you can get rid of special characters of this type using a function such as this that replace 'ç' to 'c' and 'ù' to 'u':
However, you can get rid of special characters of this type using a function such as this that replace 'ç' to 'c' and 'ù' to 'u':
$string = "How are things where are you?.";
$string = preg_replace(array('/ç/', '/ù/'), array('c','u'), $string);
Pierrick CUSSET
Autodidact passionate about the web, I'm always looking for new challenges.
Founder of Online-Free-Tools.com.
Comments
No comment