目录中有中文时将中文编码自动转换为UTF-8
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<?php
function my_dir($dir) {
$files = [];
if(@$handle = opendir($dir)) {
while(($file = readdir($handle)) !== false) {
if($file != ".." && $file != ".") {
// if(is_dir($dir . "/" . $file)) { //如果是子文件夹,进行递归
// $files[$file] = my_dir($dir . "/" . $file);
// } else {
$files[] = characet($file);
// }
}
}
closedir($handle);
}
return $files;
}
function characet($data){
if( !empty($data) ){
$fileType = mb_detect_encoding($data , array('UTF-8','GBK','LATIN1','BIG5')) ;
if( $fileType != 'UTF-8'){
$data = mb_convert_encoding($data ,'utf-8' , $fileType);
}
}
return $data;
}
// echo "<pre>";
// print_r(my_dir("./"));
// echo "</pre>";
$array = my_dir("./");
// var_dump($array);
foreach ($array as $value)
{
echo "<a href='$value'><h2>$value</h2></a>";
}
?>
</html>
PHP识别中文编码并自动转换为UTF-8
php自动识别编码,若里面有中文的话,将其转换为UTF-8就最好了,因为中文在Gbk编辑情况情况下,有可能会乱码,这个和客户端和服务端编码都有关系,为了避免乱码,我们可以使用下面的函数将其自动转换为UTF8国际标准编码:
<?php
function characet($data){
if( !empty($data) ){
$fileType = mb_detect_encoding($data , array('UTF-8','GBK','LATIN1','BIG5')) ;
if( $fileType != 'UTF-8'){
$data = mb_convert_encoding($data ,'utf-8' , $fileType);
}
}
return $data;
}
?>
PHP遍历文件夹下的所有文件
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>index</title>
</head>
<body>
<?php
function my_dir($dir) {
$files = [];
if(@$handle = opendir($dir)) {
while(($file = readdir($handle)) !== false) {
if($file != ".." && $file != ".") {
if(is_dir($dir . "/" . $file)) { //如果是子文件夹,进行递归
$files[$file] = my_dir($dir . "/" . $file);
} else {
$files[] = characet($file);
}
}
}
closedir($handle);
}
return $files;
}
function characet($data){
if( !empty($data) ){
$fileType = mb_detect_encoding($data , array('UTF-8','GBK','LATIN1','BIG5')) ;
if( $fileType != 'UTF-8'){
$data = mb_convert_encoding($data ,'utf-8' , $fileType);
}
}
return $data;
}
// echo "<pre>";
// print_r(my_dir("./"));
// echo "</pre>";
$array = my_dir("./");
var_dump($array);
// foreach ($array as $value)
// {
// echo "<a href='$value'><h2>$value</h2></a>";
// }
?>
</html>