У меня есть следующий код:
$image_1 = $value->getElementsByTagName("Image1");
$image1 = $image_1->item(0)->nodeValue;
$image_2 = $value->getElementsByTagName("Image2");
$image2 = $image_2->item(0)->nodeValue;
Есть ли более простой способ не повторять код Если мне нужно $ image_3?
т.е. как я могу рефакторинг это?
Спасибо
UPDATE:
Я использую переменные $ images_x в следующем коде, который также нуждается в рефакторинге:
ОБНОВЛЕНИЕ 2: - Мой полный код:
$image_1 = $value->getElementsByTagName("Image1");
$image1 = $image_1->item(0)->nodeValue;
$image_2 = $value->getElementsByTagName("Image2");
$image2 = $image_2->item(0)->nodeValue;
$image_3 = $value->getElementsByTagName("Image3");
$image3 = $image_3->item(0)->nodeValue;
$filename_1 = basename($image1);
$ch = curl_init ($image1);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata_1=curl_exec ($ch);
curl_close ($ch);
$fp = fopen(Mage::getBaseDir('media') . DS . 'import/'.$filename_1,'w');
fwrite($fp, $rawdata_1);
fclose($fp);
$filename_2 = basename($image2);
$ch = curl_init ($image2);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata_2=curl_exec ($ch);
curl_close ($ch);
$fp = fopen(Mage::getBaseDir('media') . DS . 'import/'.$filename_2,'w');
fwrite($fp, $rawdata_2);
fclose($fp);
$filename_3 = basename($image3);
$ch = curl_init ($image3);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_BINARYTRANSFER,1);
$rawdata_3=curl_exec ($ch);
curl_close ($ch);
$fp = fopen(Mage::getBaseDir('media') . DS . 'import/'.$filename_3,'w');
fwrite($fp, $rawdata_3);
fclose($fp);
$product->addImageToMediaGallery(Mage::getBaseDir('media') . DS . 'import/' . $filename_1, array('image', 'small_image','thumbnail'), false, false);
$product->addImageToMediaGallery(Mage::getBaseDir('media') . DS . 'import/' . $filename_2, array('image', 'small_image','thumbnail'), false, false);
$product->addImageToMediaGallery(Mage::getBaseDir('media') . DS . 'import/' . $filename_3, array('image', 'small_image','thumbnail'), false, false);