我正在使用Windows平台。 如果我将myFile.pdf放在abc@xyz.com中,那么下面的代码不起作用 -
file_get_contents('C:\Apache24\htdocs\portal\abc@xyz.com\myFile.pdf')
如果我将myFile.pdf放在abc @ xyzcom中,那么下面的代码就可以了 -
file_get_contents('C:\Apache24\htdocs\portal\abc@xyzcom\myFile.pdf')
所以结论是 - 如果文件夹名称中有一个点(。),那么file_get_contents
就不会按预期工作。
知道如何在Windows平台的文件夹名称中转义(。)吗?
答案 0 :(得分:2)
不是aswer(尚):
请尝试
<?php
$path = 'C:\\Apache24\\htdocs\\portal\\abc@xyz.com\\myFile.pdf';
checkPath($path);
function checkPath($path) {
$d = dirname($path);
if ( '/'===$d || '\\'===$d || $path===$d ) {
return;
}
else {
checkPath($d);
echo
file_exists($path) ? '+':'-',
is_dir($path) ? 'd' : ' ',
is_readable($path) ? 'r' : ' ',
' | ', $path,
"<br />\r\n";
}
}
和add输出到您的问题文本。