Я строю массив в цикле и результаты ниже него для целей тестирования:доступа значение массива в цикл
$email_array[]= array(
'email' => $fnd_result->fields['email'],
'name' => $fnd_result->fields['name']
);
//$emailArray
(
[0] => Array
(
[email] => [email protected]
[name] => test1
)
[1] => Array
(
[email] => [email protected]
[name] => test2
)
)
$snd_cnt = count($email_array);
затем на событии эта функция срабатывает:
for ($x = 0; $x < $snd_cnt; $x++){
$send_to_name = $email_array[$x]['name'];
$send_to_email = $email_array[$x]['email'];
$email_subject = "Your Forklift Has Arrived!";
// Prepare Text-only portion of message
$text_message = OFFICE_FROM . "\t" . $bname . "\n" .
'As you requested, we are notifying you that we have a new forklift in our inventory' . "\n" ."\n" .
'We added a: ' . "\n" ."\n" .
'Year: ' . $forklift_year . "\n" .
'Make: ' . $forklift_make . "\n" .
'Model: ' . $products_model . "\n" .
'Please visit our website at ojlforklifts.com or call us at (305) 836-4337 ' ."\n" ."\n" ."\n" .
$extra_info['TEXT'];
// Prepare HTML-portion of message
$html_msg['EMAIL_GREETING'] = $email_subject;
$html_msg['EMAIL_WELCOME'] = 'We recieved a Forklift within your specs.';
$html_msg['EMAIL_FIRST_NAME'] = $send_to_name;
$html_msg['EMAIL_MESSAGE_HTML'] = '<table> ' .
'<tr><td>Make: </td> <td>' . $forklift_make . '</td></tr>' .
'<tr><td>Capacity: </td> <td>' . $forklift_capacity . 'Lbs</td></tr>' .
'<tr><td>Fuel: </td> <td>' . $fuelM . '</td></tr>' .
'<tr><td>Tires: </td> <td>' . $tireM . '</td></tr>' .
'<tr><td>Price: </td> <td>' . $products_price . '</td></tr>' .
'<tr><td colspan="2"><img src="http://ojlforklifts.com/images/' . $products_image . '" width="350"/></td></tr>' .
'</table>';
zen_mail($send_to_name, $send_to_email, $email_subject, $text_message, $name, $email_address, $html_msg ,'fork_notify');
}
$ send_to_email всегда возвращает пустой
$ send_to_name всегда возвращает пустой
So в пробл em это то, что я не могу получить доступ к двум переменным в цикле. Если я echo $email_array[0]['email']
с индексом hardcoded, он даст мне результат [email protected], но в минуту, когда я положил положительную переменную для индекса, $email_array[$x]['email']
, результат пуст.
Может ли кто-нибудь указать мне правильное направление? Я даже пробовал цикл while, и он тоже не работает.
Невозможно воспроизвести проблему. Пожалуйста, убедитесь, что вы показываете нам свой полный и реальный код. – Rizier123
Пожалуйста, сделайте вашу проблему более ясной, я не совсем понимаю, что не так с вашим кодом. Если у вас есть переменная befor this, она будет перезаписана каждый раз. Btw – JRsz
Ваш код перезапишет имя и адрес электронной почты. Первый раз это электронная почта [0], второй раз это электронная почта [1], и в третий раз она будет пустой. Я думаю, если вы замените for loop на 'for ($ x = 0; $ x <= $ snd_cnt; $ x ++) {' он все равно перезапишет, но сохранит [1] – Andreas