Подчеркивание файлов на чтение каталога
Создал чтение каталогов простой в PHP, только на время передачи файлов с подчеркивания, они появляются странные символы, а затем я не могу открыть эти файлы.
Как сделать чтение правильные ударения?
Уже пробовал много вещей, меняется на UTF8 в HTML, но до сих пор ничего.
<?php
//diretorio
$base = 'files/';
$abreDir = ($_GET['dir'] != '' ? $_GET['dir'] : $base);
$openDir = dir($abreDir);
//voltar
$strrdir = strrpos(substr($abreDir,0,-1),'/');
$voltar = substr($abreDir,0,$strrdir+1);
$openDir = dir($abreDir);
while($arq = $openDir -> read()):
if($arq != '.' && $arq != '..'):
if(is_dir($abreDir.$arq)):
//pastas
echo'<li class="folders"><a href="discovirtual?dir='.$abreDir.$arq.'/">'.$arq.'</a></li>';
else:
//arquivos
echo'<li class="files"><a href="'.$abreDir.$arq.'">'.$arq.'</a></li>';
endif;
endif;
endwhile;
if($abreDir != $base):
echo '<a href="discovirtual?dir='. $voltar.'">Voltar</a>';
endif;
$openDir -> close();
?>
3
1 answers
Существует несколько способов для устранения неполадок. Что еще рекомендую renomear os arquivos
hash
sha1
и сделать акценты во время включения. Это решит проблемы с диакритическими знаками и специальными символами.
Другой способ конвертировать эти символы, процитировал это с помощью utf8_decode();
utf8_encode();
То, что они делают?
utf8_encode
- Кодирует строку ISO-8859-1, UTF-8 -
utf8_decode
- Преобразует строку символов ISO-8859-1 с кодировкой UTF-8, single-byte ISO-8859-1.
2
Author: Dalton Menezes, 2014-05-14 05:38:36