php file_get_contents 阿拉伯字符

标签 php file arabic

您好,我的 PHP 代码有问题: 我需要使用 file_get_contents 打开一个 txt 文件,txt 文件的目录包含阿拉伯字符 我的代码:

$URLX = "C:/server files/BN/public_html" ; 
$BookName = "الإضافةإلىمفاوضةمالكحسون" ; 
$eachChapiter[$x] = "مالكمالكحسون" ; 

$content = file_get_contents($URLX."/".$BookName."/".str_replace(' ', '', $eachChapiter[$x]).".txt"); 

错误输出:

WARNING: FILE_GET_CONTENTS(C:/SERVER FILES/BN/PUBLIC_HTML/الإضافةإلىمفاوضةمالكحسون/مالكمالكحسون.TXT): FAILED TO OPEN STREAM: NO SUCH FILE OR DIRECTORY IN C:\XAMPP\HTDOCS\LIBRARY\SEARCH\SEARCH.PHP ON LINE 30

NOTICE: UNDEFINED OFFSET: 1 IN C:\XAMPP\HTDOCS\LIBRARY\SEARCH\SEARCH.PHP ON LINE 38

最佳答案

感谢@Mike 帮我更正答案。因此,根据问题和 OP 的操作系统,您(OP)似乎遇到了 this 的变体。错误。

如该链接所述,您可以使用以下代码来检测文件名编码

...    

$final_url = $URLX."/".$BookName."/".str_replace(' ', '', $eachChapiter[$x]);

mb_detect_encoding($final_url, 'UTF-8', true)) ? utf8_decode($final_url) : $final_url;
$content = file_get_contents($final_url).".txt");

请记住,此代码会在 Linux 服务器上产生问题(再次在该链接上讨论)。因此,如果您使用的是 Linux 生产环境,那么您可以应用此处建议的解决方案。

关于php file_get_contents 阿拉伯字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38462631/

相关文章:

java - 如何将PrimeFaces的 "Wizard"和 "PanelGrid"方向改为RTL

php - 阿拉伯语中的 Sphinx Search 2.2.5 不工作

PHP 使用 REST 插入 MySQL 数据库

php - ldap_bind() 不起作用

android - 删除文件(包括内容清理)

linux - 读取远程文件的 block 而不传输整个文件?

c - 我使用哪个函数从文件中读取文本?

java - 从右到左设置 JFrame 方向!

php - 清除 session 表中持久日志中的行?

php - 使用php从mysql数据库反序列化数据数组