When using PHP's pathinfo()
function on a filename known to be UTF-8, it does not return the correct value, unless there are 'normal' characters in front of the special character.
Examples:
pathinfo('a?.pdf')
returns:
Array
(
[dirname] => [the dir]
[basename] => a?.pdf
[extension] => pdf
[filename] => a?
)
which is fine and dandy, but pathinfo('?a.pdf')
returns:
Array
(
[dirname] => [the dir]
[basename] => a.pdf
[extension] => pdf
[filename] => a
)
Which is not quite what I was expecting. Even worse, pathinfo('?.pdf')
returns:
Array
(
[dirname] => [the dir]
[basename] => .pdf
[extension] => pdf
[filename] =>
)
Why does it do this? This goes for all accented characters I have tested.
See Question&Answers more detail:
os 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…