Я хотел бы знать, если это правильный способ объединить много динамических переменных и сохранить их в одну переменную? Динамические переменные содержат HTML. Некоторые из них могут, в зависимости от более раннего кода, ничего не содержать.
Или есть альтернативы?
$specialproductmsg = $garminmsg .= $studdybuddymsg .= $baroncoursemsg .= $fircoursemsg .= $pilotworkshopmsg .= $cfirenewalmsg .= $flightsimmsg .= $xplane11msg .= $ltfcoursemsg;
Ты должен сделать
$specialproductmsg = $garminmsg . $studdybuddymsg . $baroncoursemsg . $fircoursemsg . $pilotworkshopmsg . $cfirenewalmsg . $flightsimmsg . $xplane11msg . $ltfcoursemsg;
И все будет храниться на $specialproductmsg
Для объединения не используйте .=
между переменными.
Вы можете увидеть больше Вот
Вы можете просто хранить их в одной переменной для начала.
Вместо всех отдельных переменных, таких как $garminmsg
а также $studdybuddymsg
Вы можете назначить динамические строки HTML для различных ключей массива, таких как
$html['garminmsg']
$html['studdybuddymsg']
// etc.
Вы сможете сделать то же самое с $html['garminmsg']
что вы бы с $garminmsg
и когда пришло время вывести его (или присвоить все содержимое другой переменной), вы можете использовать такие вещи, как
$specialproductmsg = implode('', $html);
или же
foreach ($html as $section) {
echo $section;
}
и отказаться от всей грязной конкатенации.
Вы можете объединить в PHP с помощью .
,
//assuming first initialization, use = to assign, . to concatenate vars
$specialproductmsg = $garminmsg.$studdybuddymsg.$baroncoursemsg;
//since init already, append additional concatenated vars
$specialproductmsg .= $fircoursemsg.$pilotworkshopmsg.$cfirenewalmsg;
$specialproductmsg .= $flightsimmsg.$xplane11msg.$ltfcoursemsg;
Я разделил его на три строки для удобства чтения. .=
добавляет в то время как .
конкатенации.
.=
эквивалентно вар =
Сам конкатенация к чему-то другому:
$foo .= $bar;
//is equivalent to
$foo = $foo.$bar;