safe mode for utf8_encodeFN
darcs-hash:20050123182753-9977f-9226687e01f083dbeea7a205db30a6d74ed2eb5f.gz
This commit is contained in:
parent
d5a2a500a5
commit
f59b22f06f
19
inc/utf8.php
19
inc/utf8.php
|
@ -11,10 +11,19 @@
|
|||
*
|
||||
* Slashes are not encoded
|
||||
*
|
||||
* When the second parameter is true the string will
|
||||
* be encoded only if non ASCII characters are detected -
|
||||
* This makes it safe to run it multiple times on the
|
||||
* same string (default is true)
|
||||
*
|
||||
* @author Andreas Gohr <andi@splitbrain.org>
|
||||
* @see urlencode
|
||||
*/
|
||||
function utf8_encodeFN($file){
|
||||
$file = rawurlencode($file);
|
||||
function utf8_encodeFN($file,$safe=true){
|
||||
if($safe && preg_match('#^[a-zA-Z0-9/_\-.%]+$#',$file)){
|
||||
return $file;
|
||||
}
|
||||
$file = urlencode($file);
|
||||
$file = str_replace('%2F','/',$file);
|
||||
return $file;
|
||||
}
|
||||
|
@ -22,10 +31,13 @@ function utf8_encodeFN($file){
|
|||
/**
|
||||
* URL-Decode a filename
|
||||
*
|
||||
* This is just a wrapper around urldecode
|
||||
*
|
||||
* @author Andreas Gohr <andi@splitbrain.org>
|
||||
* @see urldecode
|
||||
*/
|
||||
function utf8_decodeFN($file){
|
||||
$file = rawurldecode($file);
|
||||
$file = urldecode($file);
|
||||
return $file;
|
||||
}
|
||||
|
||||
|
@ -52,7 +64,6 @@ function utf8_check($Str) {
|
|||
return true;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* This is a unicode aware replacement for strlen()
|
||||
*
|
||||
|
|
Loading…
Reference in New Issue