使用 UTF-8 特殊字符处理 PHP 文件

标签 php

似乎 PHP 中的文件处理不适用于某些字符(例如 €)编码的 UTF-8 如果路径是硬编码并且 php 文件保存为 UTF-8。

是否有可能让它适用于所有(或大多数西方角色)?有没有图书馆可以让它成为可能?因为我找不到。

例如,名为 äöü&()éèàâêûô@$+ç%&=!£_;{[]}~´¢¬§°#@¦…€` 的文件夹在 Windows 中将不会'不与 is_dir() 一起工作。

最佳答案

对于 Windows,解决方案是将文件名/文件夹名转换为 Windows-1252 编码:

$dir = 'فارسی';
$dir = iconv(mb_detect_encoding($dir, "auto"), 'Windows-1252', $string);
mkdir($dir);

关于使用 UTF-8 特殊字符处理 PHP 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7502685/

相关文章:

php - 安全的用户身份验证框架、库

php - 检查 SQL 表上的数组是否有重复项

php 数组数据在 JQuery 中不起作用

php改变多维数组的值

php - 将mysql表插入div中

php - 将特殊字符保存到数据库然后使用 PHP 显示

PHP解析xml问题与获取值

PHP 登录表单 mysql 和 bootstrap 风格给出错误

PhpUnit 和 Laravel 5.4 如何在测试期间模拟 session 数据

php - 递归搜索并删除数组?