You want to remove whitespace from the beginning or end of a string. For example, you want to clean up user input before validating it.
Use ltrim( ), rtrim( ), or trim( ). ltrim( ) removes whitespace from the beginning of a string, rtrim( ) from the end of a string, and trim( ) from both the beginning and end of a string:
<?php $zipcode = trim($_REQUEST['zipcode']); $no_linefeed = rtrim($_REQUEST['text']); $name = ltrim($_REQUEST['name']); ?>
For these functions, whitespace is defined as the following characters: newline, carriage return, space, horizontal and vertical tab, and null .
Trimming whitespace off of strings saves storage space and can make for more precise display of formatted data or text within <pre> tags, for example. If you are doing comparisons with user input, you should trim the data first, so that someone who mistakenly enters "98052" as their zip code isn't forced to fix an error that really isn't one. Trimming before exact text comparisons also ensures that, for example, "salami\n" equals "salami." It's also a good idea to normalize string data by trimming it before storing it in a database.
The trim( ) functions can also remove user-specified characters from strings. Pass the characters you want to remove as a second argument. You can indicate a range of characters with two dots between the first and last characters in the range:
<?php // Remove numerals and space from the beginning of the line print ltrim('10 PRINT A$',' 0..9'); // Remove semicolon from the end of the line print rtrim('SELECT * FROM turtles;',';'); ?>
PRINT A$ SELECT * FROM turtles
PHP also provides chop( ) as an alias for rtrim( ). However, you're best off using rtrim( ) instead because PHP's chop( ) behaves differently than Perl's chop( ) (which is deprecated in favor of chomp( ) , anyway), and using it can confuse others when they read your code.
1.9.4. See Also
Documentation on trim( ) at http://www.php.net/trim, ltrim( ) at http://www.php.net/ltrim, and rtrim( ) at http://www.php.net/rtrim.