我正在尝试使用mkdir代码创建一个目录。 当我使用这段代码时:
mkdir("test");
然后,"测试"目录将被创建。
但是当我尝试这样的事情时
mkdir($_SESSION['username']);
然后,我得到一个错误说
警告:mkdir():open_basedir限制生效。 File()不在允许的路径中
这是什么意思? 我也试过
$path = $_SESSION['username'];
mkdir($path);
和
mkdir("".$_SESSION['username']."");
但它给了我相同的错误消息。 我该怎么办?
答案 0 :(得分:2)
确保在文件夹名称前加上您要创建文件夹的完整路径。即,如果您尝试在/tmp/users
下创建文件夹,则可以使用以下代码:
mkdir('/tmp/users/' . $_SESSION['username']);
您还需要确保已配置PHP以允许您访问该路径。请参阅open_basedir ini指令:http://php.net/manual/en/ini.core.php#ini.open-basedir