Это довольно сложная проблема, поэтому я сделаю все возможное, чтобы правильно ее объяснить.
Я разрабатываю шаблон электронной почты в формате HTML, который будет загружен в веб-приложение на основе flex, но я попытаюсь использовать общие переменные в моем примере.
Issue:
У меня есть вариант изображения, где пользователь может выбрать из библиотеки изображений для своего шаблона. Когда пользователь выбирает изображение, есть 3 атрибута, которые будут загружаться в зависимости от выбранного изображения, мы будем называть их X, Y, Z. Доступно только шесть изображений, и у меня есть все их URL-адреса, как таковые:
$image_1 = '.../image1.jpg';
$image_2 = '.../image2.jpg';
$image_3 = '.../image3.jpg';
и т. Д. Со всеми жестко закодированными URL-адресами, представленными определенной переменной.
Мой код выглядит примерно так:
// Здесь изображение будет напечатано после выбора и отображения страницы.
<img src="<?=$fields['mainImage']?>" /> //Pre-selection, and post image selection that <?=$fields['mainImage']?> will be the URL.
// Здесь я пытаюсь добавить немного логики прямо под тем местом, где загружается изображение. Этот оператор if фактически вызовет переменную для сканирования определенного массива данных и печати определенных данных, которые соответствуют выбранному изображению (X, Y, Z, как указано выше). Но чтобы не только упростить его и проверить функциональность исходной логики, я просто повторю три отдельных утверждения в этом примере.
<?
$fields['mainImage'] = $mainImage;
if ($mainImage = $image_1){
echo 'The first one works';
}
elseif ($mainImage = $image_2){
echo 'Yay the second data string loads!';
}
else
echo 'O fart';
?>
Результат:
В приведенном выше примере, выбирает ли пользователь 1-е изображение или 3-е изображение, которое он загружает, «первое работает» так, как будто он не может обработать какую-либо информацию, кроме моей первоначальной инструкции if. Возможно, есть синтаксическая ошибка, о которой я не знаю? Или может быть ошибка в моей логике? Это довольно простой пример стандартного оператора if, но я довольно озадачен тем, почему он работает не так, как должен, и хотел бы получить совет или отзыв.