我想在PHP中动态地在Web服务器上创建一个文件.
首先,我创建一个目录来存储文件.这个工作
// create the users directory and index page
$dirToCreate = "..".$_SESSION['s_USER_URL'];
mkdir($dirToCreate, 0777, TRUE); // create the directory for the user
Run Code Online (Sandbox Code Playgroud)
现在我想创建一个名为index.php的文件,并将一些内容写入其中.
我在尝试:
$ourFileName = $_SESSION['s_USER_URL']."/"."index.php";
$ourFileHandle = fopen($ourFileName, 'x') or die("can't open file");
fclose($ourFileHandle);
// append data to it
$ourFileHandle = fopen($ourFileName, 'a') or die("can't write to file");
$stringData = "Hi";
fwrite($ourFileHandle, $stringData);
Run Code Online (Sandbox Code Playgroud)
但它永远不会超过$ourFileHandle = fopen($ourFileName, 'x') or die("can't open file");Saying文件不存在,但这就是重点.我想创造它.
我做了一些回应,路径(/ people/jason)存在,我正在写信给/people/jason/index.php
有没有人对我做错了什么有任何想法?
我相信Linux服务器上的PHP 5.
-Jason
首先你做:
$dirToCreate = "..".$_SESSION['s_USER_URL'];
Run Code Online (Sandbox Code Playgroud)
但是您尝试写入的文件名不以".."为前缀,因此请尝试更改
$ourFileName = $_SESSION['s_USER_URL']."/"."index.php";
Run Code Online (Sandbox Code Playgroud)
至
$ourFileName = '..' . $_SESSION['s_USER_URL'] . '/index.php';
Run Code Online (Sandbox Code Playgroud)
或者可能更整洁:
$ourFileName = $dirToCreate . '/index.php';
Run Code Online (Sandbox Code Playgroud)
您可能正在收到警告,因为您尝试将文件写入的目录不存在
| 归档时间: |
|
| 查看次数: |
401 次 |
| 最近记录: |