У меня странная проблема, и я надеюсь, что ты сможешь мне помочь. У меня есть диктор на моем сервере с изображениями. Теперь я хочу прокрутить каждое изображение и проверить, содержит ли имя файла специальную букву типа a, o, u или?. Я сделал это с помощью str_replace (), но он не работает с именами файлов. Если я использую обычную строку типа «aouer», проблем нет. (После этого я хочу переименовать файлы, но это не проблема).
function rename_files() {
//get path of folder (it's WP)
$path = wp_upload_dir()['path'];
//loop through folder
foreach(glob($path . "/*") as $file) {
$filepath = pathinfo( $file )
//get filename with special characters of file a€“ works
$filename = $filepath['filename'];
$specialChars = array("a", "o", "u", "A", "O", "U", "?");
$replaceChars = array("ae", "oe", "ue", "Ae", "Oe", "Ue", "ss");
//replace special characters - doesn't work
$newName = str_replace($specialChars, $replaceChars, $filename);
var_dump($newName);
//$newFile = $filepath['dirname'] . '/' . $newName . '.' . $filepath['extension'];
//rename($file, $newFile);
}
}
Я также пробовал это с локальной папкой на моем компьютере - той же проблемой, поэтому это не проблема WordPress.
Может кто-то догадаться, что случилось?
Благодаря!
У меня странная проблема, и я надеюсь, что ты сможешь мне помочь. У меня есть диктор на моем сервере с изображениями. Теперь я хочу прокрутить каждое изображение и проверить, содержит ли имя файла специальную букву типа a, o, u или?. Я сделал это с помощью str_replace (), но он не работает с именами файлов. Если я использую обычную строку типа «aouer», проблем нет. (После этого я хочу переименовать файлы, но это не проблема).
function rename_files() {
//get path of folder (it's WP)
$path = wp_upload_dir()['path'];
//loop through folder
foreach(glob($path . "/*") as $file) {
$filepath = pathinfo( $file )
//get filename with special characters of file a€“ works
$filename = $filepath['filename'];
$specialChars = array("a", "o", "u", "A", "O", "U", "?");
$replaceChars = array("ae", "oe", "ue", "Ae", "Oe", "Ue", "ss");
//replace special characters - doesn't work
$newName = str_replace($specialChars, $replaceChars, $filename);
var_dump($newName);
//$newFile = $filepath['dirname'] . '/' . $newName . '.' . $filepath['extension'];
//rename($file, $newFile);
}
}
Я также пробовал это с локальной папкой на моем компьютере - той же проблемой, поэтому это не проблема WordPress.
Может кто-то догадаться, что случилось?
Благодаря!
0-1PHP, файл, ул замены,