使用php在另一个目录中创建文件

Imr*_*l.H 15 php file

我的文件夹结构如下 -

root
  admin
    create_page.php
  pages
    my_page1.php
    my_page2.php
Run Code Online (Sandbox Code Playgroud)

我有在"pages"文件夹中创建新php文件的代码.代码就像 -

$dir_path = "../pages/";
$ourFileName = '../'.$page_name.".txt";
$ourFileHandle = fopen($ourFileName, 'w') or die("can't open file");
$ourFileContent = '<?php echo "something..." ?>';
if (fwrite($ourFileHandle, $ourFileContent) === FALSE) {
    echo "Cannot write to file ($filename)";
    exit;
}
Run Code Online (Sandbox Code Playgroud)

代码正常执行..没问题.但该页面尚未创建.请告诉我我做错了什么.路径有问题吗?FCLOSE($ ourFileHandle);

Law*_*one 22

这是一个使用fopen,fwrite,fclose 的更简单的file_put_contents()包装器的示例

<?php 
error_reporting(E_ALL);

$pagename = 'my_page1';

$newFileName = './pages/'.$pagename.".php";
$newFileContent = '<?php echo "something..."; ?>';

if (file_put_contents($newFileName, $newFileContent) !== false) {
    echo "File created (" . basename($newFileName) . ")";
} else {
    echo "Cannot create file (" . basename($newFileName) . ")";
}
?>
Run Code Online (Sandbox Code Playgroud)


小智 7

$ourFileHandle = fopen("../pages/" .$ourFileName, 'w') or die("can't open file");
Run Code Online (Sandbox Code Playgroud)

将上述更改改为第三行,它可能会起作用; 我尝试了它,它的工作原理.