Создание файла PHP

Discussion in 'PHP' started by Filipp, 10 Feb 2016.

  1. Filipp

    Filipp Elder - Старейшина

    Joined:
    10 May 2015
    Messages:
    257
    Likes Received:
    57
    Reputations:
    31
    Нужно создать файл в определенной директории в обход отключенных функций.
    Code:
    Disable Functions: fopen, file_put_contents, copy, unlink, rmdir, mkdir, ftruncate, chmod, touch, symlink, dio_open, dl.
    Получилось создать временный файл и получить его имя в обход ограничений таким образом:
    PHP:
    $temp tmpfile();
    $meta stream_get_meta_data($temp);
    $path $meta['uri']; // путь к файлу
    fwrite($temp"mystring");
    fclose($temp);
    Однако скопировать в нужную директорию так и не получилось, функция copy отключена. Что можно сделать в данном случае?
     
  2. Kaimi

    Kaimi Well-Known Member

    Joined:
    23 Aug 2007
    Messages:
    1,732
    Likes Received:
    811
    Reputations:
    231
    _________________________
    BabaDook and Filipp like this.
  3. Filipp

    Filipp Elder - Старейшина

    Joined:
    10 May 2015
    Messages:
    257
    Likes Received:
    57
    Reputations:
    31
    Хм, интересная фнукция pcntl_exec, она не заблокирована. Только вот не получается ее запустить.
    PHP:
    $username $_SERVER['argv'][1];
    Я так понял это параметр переданный с терминала, что я должен туда записать?
     
  4. banned

    banned Banned

    Joined:
    20 Nov 2006
    Messages:
    3,324
    Likes Received:
    1,193
    Reputations:
    252
    PHP:
    exec('touch /Users/Isis/1.txt');
    system('touch /Users/Isis/2.txt');
    pcntl_exec("/usr/bin/touch", ["/Users/Isis/3.txt"]);
    PHP:
    ll grep .txt                                                                                                                         
    -rw-r--r--    1 Isis  staff      0 10 фев 11:52 1.txt
    -rw-r--r--    1 Isis  staff      0 10 фев 11:53 2.txt
    -rw-r--r--    1 Isis  staff      0 10 фев 12:00 3.txt
    UPD:
    Если ты используешь tmpfile, то в переносе файла тебе поможет функция rename.

    UPD2:
    PHP:
    gzopen('/Users/Isis/4.txt''w');
     
    #4 banned, 10 Feb 2016
    Last edited: 10 Feb 2016
    BabaDook and Filipp like this.