如何使用file_get_contents在php5中使用c:/目录路径?

时间:2014-06-11 18:01:52

标签: php

你好,我在获取file_get_contents()时遇到问题;返回一个字符串,如果我对实际的Web服务器上的文件使用此函数它工作正常,但如果在Web服务器上工作的文件现在移动到我的个人计算机c:/ drive然后file_get_contents();不再工作....我已经尝试添加一个ini_set();包括没有用的路径。

除非我错过了什么,否则在PHP方面缺乏绝对准确的文档会让人感到慌张。

我在这里阅读了文档 - > http://www.php.net//manual/en/function.file-get-contents.php和此处 - > http://www.php.net//manual/en/function.set-include-path.php也是。

这是我的代码:

<?php
ini_set("auto_detect_line_endings", true);

$db = mysqli_connect("localhost", "root","pass", "DB");

if(mysqli_connect_errno()){
    echo "Failed to connect to MySQL: " . mysqli_connect_errno();
}

$SQL_query = "SELECT text FROM table";

$query = mysqli_query($db, $SQL_query);

echo getcwd();

$file_path = "C:\folder\file.txt";

echo file_get_contents($file_path);

while($result = mysqli_fetch_array($query))
{
    echo $result["username"] . " ";

    if(strstr($file, $result["username"])) 
    {
        echo "Hello this is equal!";

    }else {
        echo"this is not equal!"
    }
}

1 个答案:

答案 0 :(得分:1)

由于反斜杠是转义字符,因此您将转义该字符串中的f字符。结果是C:folderfile.txt

每次要使用它时都需要加倍反斜杠(换句话说,你必须用反斜杠转义反斜杠):

$file_path = "C:\\folder\\file.txt";
chandlermania建议使用DIRECTORY_SEPARATOR常数

更好
$file_path = "C:" . DIRECTORY_SEPARATOR . "folder" . DIRECTORY_SEPARATOR . "file.txt";