@ 2013-06-07T13:22:31Z <?php
function unicode2utf8($c){
$output="";
if($c < 0x80)
{
return chr($c);
}
else if($c < 0x800)
{
return chr( 0xc0 | ($c >> 6) ).chr( 0x80 | ($c & 0x3f) );
}
else if($c < 0x10000)
{
return chr( 0xe0 | ($c >> 12) ).chr( 0x80 | (($c >> 6) & 0x3f) ).chr( 0x80 | ($c & 0x3f) );
}
else if($c < 0x200000)
{
return chr(0xf0 | ($c >> 18)).chr(0x80 | (($c >> 12) & 0x3f)).chr(0x80 | (($c >> 6) & 0x3f)).chr(0x80 | ($c & 0x3f));
}
return false;
}
function sanitizeFileName( $name ) {
$invalidCharacters = array("\x2f", "\x22", "\x2a", "\x3a", "\x3c", "\x3e", "\x3f", "\x5c", "\x7f");
$name = str_replace($invalidCharacters, '', $name);
$name = preg_replace('/[\x{0000}-\x{001F}\x{0080}-\x{009F}\x{E000}-\x{F8FF}\x{FDD0}-\x{FDEF}\x{FFF0}-\x{FFFF}]/u', '', $name);
return $name;
}
$str = "blablabla ǹéñ~#>< - ".unicode2utf8(0xE001).' - '.unicode2utf8(0xFDD3).' - '.unicode2utf8(0xFD00);
var_dump($str);
var_dump(sanitizeFileName($str));
Enable javascript to submit You have javascript disabled. You will not be able to edit any code.
Output for 4.3.3 - 4.3.11 , 4.4.0 - 4.4.9 , 5.0.0 - 5.0.5 , 5.1.0 - 5.1.6 , 5.2.0 - 5.2.17 , 5.3.0 - 5.3.23 , 5.4.0 - 5.4.13 , 5.4.41 - 5.4.45 , 5.5.10 - 5.5.38 , 5.6.0 - 5.6.28 , 7.0.0 - 7.0.20 , 7.1.0 - 7.1.33 , 7.2.0 - 7.2.33 , 7.3.0 - 7.3.33 , 7.4.0 - 7.4.33 , 8.0.0 - 8.0.30 , 8.1.0 - 8.1.28 , 8.2.0 - 8.2.18 , 8.3.0 - 8.3.6 string(38) "blablabla ǹéñ~#>< - - - ﴀ"
string(30) "blablabla ǹéñ~# - - - ﴀ"
Output for 5.3.24 - 5.3.29 , 5.4.14 - 5.4.40 , 5.5.0 - 5.5.9 string(38) "blablabla ǹéñ~#>< - - - ﴀ"
NULL
Output for 4.3.0 - 4.3.2 string(38) "blablabla ǹéñ~#>< - - - ﴀ"
Warning: Compilation failed: characters with values > 255 are not yet supported in classes at offset 42 in /in/i1CKN on line 28
NULL
preferences:dark mode live preview
216.56 ms | 402 KiB | 384 Q