@xenonhammer

Почему пишутся в корень, когда указал путь?

Использовал и $_SERVER['DOCUMENT_ROOT'] и /var/www/******/data/www/site что "одно и тоже"
Запись идет именно в /var/www/******/data
Запуск из консоли
Код

$imgName         = (basename($url_img));
                    $sku             = ($v["sku"]);
                    // $dirRoot         =  "/var/www/******/data/www/site/image/catalog/product_photo/{$indexCat}/{$sku}";
                    $dirRoot         =  "{$_SERVER['DOCUMENT_ROOT']}/image/catalog/product_photo/{$indexCat}/{$sku}";
                    $dir             = "image/catalog/product_photo/{$indexCat}/{$sku}";
                    $imgDownloadPath = " '{$dir}/{$imgName}'";

                    /*создание директорий*/   
                    if (!file_exists($dirRoot)) { 
                        mkdir($dirRoot, 0777, true);
                    }
                    $arrayImgDownloadPaths[$sku] = $arrayImg = array(
                                                                    'dirRoot' => $dirRoot,
                                                                    'url'     => $url_img
                                                                    );

foreach($arrayImgDownloadPaths as $sku => $imgs)
{   
    foreach ($imgs as $dirRoot => $url_img)
    {

        $name = (basename($url_img));
        $path = $dirRoot . $name;
        
        //если файл существует идём к следующему $url
        if(file_exists($path))
        {                
            echo "-";
            continue;

        }
        //скачиваем
        
        $ch = curl_init($url_img);
        curl_setopt($ch, CURLOPT_HTTPHEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        $data = curl_exec($ch);
        curl_close($ch);
        //записываем
        $file = fopen($path, "w+");
        fwrite($file, $data);
        fclose($file);
        echo ".";
    }
}


5e7c9c0902106328669221.jpeg
  • Вопрос задан
  • 111 просмотров
Решения вопроса 1
VicTHOR
@VicTHOR
(╮°-°)╮┳━━┳ ( ╯°□°)╯ ┻━━┻
Если код запускается не из браузера, а из консоли, то рутом будет корень.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы