我在Ubuntu Linux上使用PHP 5和Codeigniter 3.
我需要在服务器上上传和存储用户文件,但在上传之前我需要为存储文件的用户创建目录。 目录名称基于使用md5散列的用户数据。
我也在检查目录是否已在服务器上创建/存在,否则应该创建。
public function uploadImage(){
$id = $this->session->userdata('id');
$dir_name = md5($id); // create hashed dir name
$user_dir = base_url() . 'uploads/user' . '/' . $dir_name;
// print_r($user_dir);
if(!file_exists($user_dir)){
mkdir($user_dir, 0777);
print_r("created");
}else{
print_r("directory exists");
}
}
当我运行代码时,它表示已创建,但我无法查看目录。它在uploads / users文件夹中不存在。 请帮助我,我错了。非常感谢
答案 0 :(得分:0)
使用FCPATH
public function uploadImage(){
$id = $this->session->userdata('id');
$dir_name = md5($id); // create hashed dir name
/*
You may need / after FCPATH
$user_dir = FCPATH . '/uploads/user/' . $dir_name;
*/
$user_dir = FCPATH . 'uploads/user/' . $dir_name;
// print_r($user_dir);
if(!file_exists($user_dir)){
mkdir($user_dir, 0777);
// @mkdir($user_dir, 0777, true);
print_r("created");
} else {
print_r("directory exists");
}
}