@ 2020-07-18T17:25:45Z <?php
$str = 'plstrim';
$spaces = [
// The horizontal space characters are:
"\u{0009}", // Horizontal tab (HT)
"\u{0020}", // Space
"\u{00A0}", // Non-break space
"\u{1680}", // Ogham space mark
"\u{180E}", // Mongolian vowel separator
"\u{2000}", // En quad
"\u{2001}", // Em quad
"\u{2002}", // En space
"\u{2003}", // Em space
"\u{2004}", // Three-per-em space
"\u{2005}", // Four-per-em space
"\u{2006}", // Six-per-em space
"\u{2007}", // Figure space
"\u{2008}", // Punctuation space
"\u{2009}", // Thin space
"\u{200A}", // Hair space
"\u{202F}", // Narrow no-break space
"\u{205F}", // Medium mathematical space
"\u{3000}", // Ideographic space
// The vertical space characters are:
"\u{000A}", // Linefeed (LF)
"\u{000B}", // Vertical tab (VT)
"\u{000C}", // Form feed (FF)
"\u{000D}", // Carriage return (CR)
"\u{0085}", // Next line (NEL)
"\u{2028}", // Line separator
"\u{2029}" // Paragraph separator
];
foreach($spaces as $s) {
$totrim = $str . $s . $s . $s;
$trimmed = preg_replace('~\s+$~us', '\1', $totrim); // right-trimming
$sname = str_pad(strtoupper(dechex(IntlChar::ord($s))), 4, '0', STR_PAD_LEFT);
var_dump([$sname, $totrim, $trimmed]);
}
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 7.2.0 - 7.2.33 , 7.3.0 - 7.3.31 , 7.3.33 , 7.4.0 - 7.4.25 , 7.4.27 - 7.4.32 , 8.0.0 - 8.0.12 , 8.0.14 - 8.0.30 , 8.1.0 - 8.1.29 , 8.2.0 - 8.2.21 , 8.3.0 - 8.3.9 array(3) {
[0]=>
string(4) "0009"
[1]=>
string(10) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "0020"
[1]=>
string(10) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "00A0"
[1]=>
string(13) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "1680"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "180E"
[1]=>
string(16) "plstrim"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2000"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2001"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2002"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2003"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2004"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2005"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2006"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2007"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2008"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2009"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "200A"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "202F"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "205F"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "3000"
[1]=>
string(16) "plstrim "
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "000A"
[1]=>
string(10) "plstrim
"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "000B"
[1]=>
string(10) "plstrim"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "000C"
[1]=>
string(10) "plstrim"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "000D"
[1]=>
string(10) "plstrim
"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "0085"
[1]=>
string(13) "plstrim
"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2028"
[1]=>
string(16) "plstrim
"
[2]=>
string(7) "plstrim"
}
array(3) {
[0]=>
string(4) "2029"
[1]=>
string(16) "plstrim
"
[2]=>
string(7) "plstrim"
}
Output for 8.0.13 Fatal error: Uncaught Error: Class "IntlChar" not found in /in/s16FF:42
Stack trace:
#0 {main}
thrown in /in/s16FF on line 42
Process exited with code 255 . Output for 7.3.32 , 7.4.26 , 7.4.33 Fatal error: Uncaught Error: Class 'IntlChar' not found in /in/s16FF:42
Stack trace:
#0 {main}
thrown in /in/s16FF on line 42
Process exited with code 255 . preferences:dark mode live preview
180.22 ms | 402 KiB | 189 Q