Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cakephp-使用Folder::cd()更改目录(绝对windows路径)';行不通_Windows_Api_Cakephp_Path_Directory - Fatal编程技术网

Cakephp-使用Folder::cd()更改目录(绝对windows路径)';行不通

Cakephp-使用Folder::cd()更改目录(绝对windows路径)';行不通,windows,api,cakephp,path,directory,Windows,Api,Cakephp,Path,Directory,我无法使用Folder::cd()方法或cakephp api中的文件夹构造函数来设置绝对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;

我无法使用Folder::cd()方法或cakephp api中的文件夹构造函数来设置绝对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:)

解决方案 可在此处找到:

问题是路径变量中的特殊字符ä。此代码处理它:

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

IIRC在windows中,驱动器名后需要两个反斜杠,所以:
'C:\\Users\User.name\Desktop\Qualitätssicherung\Testmanagement'
好的,问题是我在这里找到了一个适合我的解决方案: