>php教程 >PHP源码 >实现windows下,从php引入汉语命名的文件

实现windows下,从php引入汉语命名的文件

PHP中文网
PHP中文网원래의
2016-05-25 17:03:451034검색

php源代码常采用utf-8编码,但windows系统下的文件名采用的编码方式是gbk,所以在php文件中,通过require "示例.php" 等类似语句是无法引入确实存在于相关目录下的文件的.相关解决思路,详见代码.个人认为这是一个很有意义的"小问题".代码仅以require的封装为例.

/**
 * 需要
 * 
 * 功能类似require,增加了对汉语文件名的支持.
 * 
 * 此函数解决windows服务器汉语文件名默认为gbk编码方式,无法通过require引入文件的
 * 不足.思路是:已知windows服务器,php会以utf-8解析gbk编码的汉语文件名,则在utf-8
 * 编码的文件中把汉语文件名转为某种兼容gbk编码的编码方式,然后再调用require加载文
 * 件即可.
 * 
 * $文件		想要通过require引入的文件
 * 
 * 注意:同require一样,若指定文件不存在,将产生 E_COMPILE_ERROR 级别的错误,这将
 * 导致脚本中止执行.
 * 
 */ 
 function 需要($文件)
 {
	//使用php的预定义常量PATH_SEPARATOR判断操作系统类型
	if(PATH_SEPARATOR==':') 
	{
		//非windows系统,可以直接引入文件
		require $文件;
	}
	else
	{
		//windows系统,需先将文件名转换为兼容gbk编码的格式
		require iconv("UTF-8", "GB18030", $文件);
	}
 }
 
 // --------------------------------------------------------------------

                   

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
이전 기사:soap 应用다음 기사:网站用户退出