简体   繁体   English

目录已创建,但在本地服务器上不存在-PHP

[英]Directory is created but do not exist on local server - PHP

I'm using PHP 5 and Codeigniter 3 on Ubuntu Linux. 我在Ubuntu Linux上使用PHP 5和Codeigniter 3。

I need to upload and store user files on the server, but before upload I need to create directory for user where files will be stored. 我需要在服务器上上传并存储用户文件,但是在上传之前,我需要为将要存储文件的用户创建目录。 Directory name is based on userdata hashed with md5. 目录名称基于以md5散列的用户数据。

Also Im checking if directory is already created/exists on server, otherwise should be created. 我也检查目录是否已经在服务器上创建/存在,否则应该创建。

   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");
        }
 }

When I run code, it says created, but I cant see directory. 当我运行代码时,它说创建了,但是我看不到目录。 It does not exist in uploads/users folder. 它在上载/用户文件夹中不存在。 Please help me, where Im wrong. 请帮助我,我错了。 Many thanks 非常感谢

USE FCPATH 使用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");
    }
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM