2

我无法借助来自 cakephp api 的方法 Folder::cd() 或 Folder Constructor 设置绝对 Windows 路径。方法调用后没有错误或消息。

例子

//path= C:".DS."Users".DS."User.Name".DS."Desktop".DS."Qualitätssicherung".DS."Testmanagement"
$fol = new Folder($path); 
print_r($fol->errors()); // empty
echo $fol->path; // empty

我尝试过的其他路径定义:

C:\Users\User.Name\Desktop\Qualitätssicherung\Testmanagement
C:\\Users\\User.Name\\Desktop\\Qualitätssicherung\\Testmanagement

我应该使用转义或特殊函数来生成有效的路径字符串吗?

PS:我使用的是最新版本的 cakephp :)

解决方案

在这里找到:Stackoverflow

问题是路径 var 中的特殊字符ä。这段代码处理它:

$string = iconv(mb_detect_encoding($string, "auto"), 'Windows-1252', $string);
4

2 回答 2

0

IIRC 在 Windows 中的驱动器名称后需要两个反斜杠,所以:'C:\\Users\User.Name\Desktop\Qualitätssicherung\Testmanagement'

于 2012-11-05T17:11:06.833 回答
0

好的,问题是特殊的 char ä 我在这里找到了一个适合我的解决方案:

堆栈溢出

$string = iconv(mb_detect_encoding($string, "auto"), 'Windows-1252', $string);
于 2014-07-17T09:13:30.687 回答