使php文件只可运行一次

使php文件只可运行一次,php,file-io,file-permissions,Php,File Io,File Permissions,我见过相当类似的问题,但没有一个能够回答我的整个用例。我有一个文件,我不想运行一次,而且只能运行一次。我将无法访问数据库,因此我的想法是创建一个文件,通过它的存在来标记脚本已经被调用过一次。我是Linux文件和目录权限的新手,只有几个小时的时间来思考它。我还不清楚很多情况 默认情况下是否允许PHP在与脚本相同的文件夹中创建文件,或者我和其他实现此功能的人是否需要显式设置权限?我注意到,netbeans创建的文件和php脚本创建的文件的所有者和组不同 -rw-r--r-- 1 anders and

我见过相当类似的问题,但没有一个能够回答我的整个用例。我有一个文件,我不想运行一次,而且只能运行一次。我将无法访问数据库,因此我的想法是创建一个文件,通过它的存在来标记脚本已经被调用过一次。我是Linux文件和目录权限的新手,只有几个小时的时间来思考它。我还不清楚很多情况

默认情况下是否允许PHP在与脚本相同的文件夹中创建文件,或者我和其他实现此功能的人是否需要显式设置权限?我注意到,netbeans创建的文件和php脚本创建的文件的所有者和组不同

-rw-r--r-- 1 anders anders  658 Jul 28 23:27 setup.php
-rw-r--r-- 1 nobody nogroup   0 Jul 28 23:28 from_setup_script.txt

那么,如果我同意这个解决方案,或者有人宣布有更好的方法来解决上述问题,我需要注意什么呢?

您可以使用会话变量,即:

<?php
session_start();
$_SESSION['isRunnable'] = true;

if ($_SESSION['isRunnable']) {
    // run...
    $_SESSION['isRunnable'] = false;
}

您可以编写程序,在执行文件时,在文件的开头添加
我的意思是重写你的php文件。这里很简单,就是你想要的 打开你的文件。为此,您应该使用w+
然后

这一切都取决于您的PHP配置,脚本所在的文件夹需要具有适当的权限才能允许PHP编写新文件。看起来您可以在几分钟内自行测试所有这些是的,对于我的设置,我可以测试这一点,但是我担心如果在另一台服务器上使用它会发生什么情况。如果你不能控制服务器权限,那么这就行不通了。他的脚本只能运行一次。。。非每个用户会话会话对于每个访问者来说都是唯一的,而且只是临时的。恐怕在这种情况下,您也会遇到文件权限限制。我想我可能需要添加一个异常来处理这些情况。