@Nikolays93
Web-разработчик

Как отдебажить input? Как отправить себе файл в input?

Скрипт принимает файл от 1C УТ кодом
$input_file = fopen( "php://input", 'r' );
$temp_file  = fopen( $temp_path, 'w' );
stream_copy_to_stream( $input_file, $temp_file );


Хотелось бы отдебажить эту (и последующую) часть кода, возможно написать юнит тесты. Но вот вопрос, как самостоятельно отравить скрипту файл чтобы он попал в php://input

Пробовал следующее, создает пустой файл (в php://input ничего не приходит).
<?php

if  (!in_array  ('curl', get_loaded_extensions())) {
    exit("CURL is NOT installed on this server");
}

$path = __DIR__ . '/curl.zip';
var_dump(is_file($path) && is_readable($path)); // true
$cFile = new \CURLFile($path, mime_content_type($path), basename($path));
$postData = ['file' => $cFile];

$ch = curl_init();
curl_setopt($ch, CURLOPT_USERPWD, 'username' . ':' . 'pass');
curl_setopt($ch, CURLOPT_URL, 'http://php.test/get.php');
// curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
curl_setopt($ch, CURLOPT_HEADER, false);
// curl_setopt($ch, CURLOPT_HTTPHEADER, ['Content-Type: multipart/form-data']);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_AUTOREFERER, true);
curl_setopt($ch, CURLOPT_SAFE_UPLOAD, true);
$res = curl_exec($ch);
curl_close($ch);
  • Вопрос задан
  • 44 просмотра
Решения вопроса 1
$input_file = fopen( "php://input", 'r' );
$temp_file  = fopen( $temp_path, 'w' );
stream_copy_to_stream( $input_file, $temp_file );


Кто мешает вместо php://input указать путь к сущесвующему файлу и с ним тестить последующие шаги?
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Алгоритмика Москва
от 110 000 до 160 000 руб.
N1.RU Новосибирск
от 100 000 руб.
Living Core Казань
от 50 000 руб.
17 сент. 2019, в 07:36
500 руб./за проект
17 сент. 2019, в 05:19
4000 руб./за проект
17 сент. 2019, в 01:18
100000 руб./за проект