如何轻松地从不同的文件夹位置映射文件路径?

时间:2009-10-16 10:16:22

标签: php file path map

如何轻松映射文件的路径?

public_html/api/function.php
<?php

function writetologfile($content)
{

    $filename = 'logfile/testing_randomstring.txt';

    if (!$handle = fopen($filename, 'a')) 
    {
        echo "Cannot open file ($filename)";
        exit;
    }
    fclose($handle);    
}

?>

文本文件的实际路径位于public_html/r/admin/logfile/testing_randomstring.txt

因此,如果我在public_html/folder1/folder2/addlog.php运行脚本,它将无法找到testing_randomstring.txt的路径

addlog.php
<?php

include("../../api/function.php");

writetologfile('hahaha');

?>

无论我的php调用脚本来自哪里,我都能轻松指向此文本文件路径。

我试图更改$ filename ='logfile / testing_randomstring.txt';在writetologfile函数内强制执行绝对修复路径, 类似于$ filename ='/ r / admin / logfile / testing_randomstring.txt', 但它无法正常工作

1 个答案:

答案 0 :(得分:0)

您可以指定绝对路径,而不是使用相对路径。假设您的主目录中有public_html,请尝试以下操作:

$filename = '/public_html/r/admin/logfile/testing_randomstring.txt';
fopen(getenv('HOME') . $filename, 'a');

这使用getenv来读取环境变量$HOME的内容。