Я пытался file_get_contents файл jpeg быть c Мне нужно было загрузить его на мой сайт Magento через его REST API.
$REMOTE_FILE_URL = "https://www.natures-collection.com/wp-content/uploads/2020/04/a389964a-dfba-48ad-81ba-09e639bc436a-450x450.jpg";
$ax = file_get_contents($REMOTE_FILE_URL);
$aa = base64_encode($ax);
d($alld['image'], $REMOTE_FILE_URL, $ax, $aa);
$basename = basename($alld['image']);
$ext = explode(".",$basename)[1];
if ($ext === "jpg") {
$ext = "jpeg";
}
d($basename,$ext);
$jso_aa = <<<EOT
{
"entry": {
"media_type": "image",
"label": "I am an image!",
"types": [
"image",
"small_image",
"thumbnail",
"swatch"
],
"content": {
"base64_encoded_data": "$aa",
"type": "image/{$ext}",
"name": "{$basename}"
},
"file": "{$basename}"
}
}
EOT;
d($jso_aa);
$reqq0 = <<<EOT
curl -X POST "http://167.179.118.154/index.php/rest/default/V1/products/{$sku}/media" -H "Authorization: Bearer joax1huoa36e0b80thbx6zynmmrthnlq" -H "Content-Type:application/json" -d '{$jso_aa}'
EOT;
d () - это пользовательская функция, которая действует как var_dump ( ).
Однако функции file_get_contents возвращают значение false. Когда я сбрасываю $ ax, я вижу FALSE.
Это происходит для этого URL, который отлично работает в браузере.
Другой URL, подобный следующему, не имеет этой проблемы: https://www.natures-collection.com/wp-content/uploads/2020/04/ea588379-eb43-4adb-a9d9-a3475ce7b2be.jpg
Почему это так и как я могу это решить?