Witam,
dlaczego 2 podobne linie
dają rożne wyniki:
Widzę że w porzypadku zmiennych nie będacych tablicami ta różnica nie występuje.
O co chodzi?
Pierwsza notacja ($zmienna jest zawarte w nadrzędnym stringu) to rozwinięcie na zasadzie makra.
I tu zgaduję: rozwijany jest pierwszy element syntaktyczny $alarm_id[0] i zastępowany jest tym, czym naprawdę jest: tablicą.
Druga notacja jest "zwykła" w tym sensie, że zmienne są w swojej normalnej roli a przecinek je skleja, masz literkę i wartość wskazanej komórki
Dużo zgaduję, PHP nie jest moim narzędziem pracy, post traktuję jako zagadkę intelektualną (nie jestem jakieś 'zero' co do PHP, ale też nie gigantem)
Zagadnienia makr i ich rozwinięcia są ważne (dużo można zrobić) , i śliskie zarazem (może zaskoczyć)
Podobnie makra w pythonie, makra-argumenty funkcji formatujących C#, czy specjalizowanych bibliotek "template" z ich wewnętrznym językiem. Fajne, użyteczne dla nieprofesjonalisty, ale wymaga trochę rozumienia, np zaskakujące jest rozwinięcie makra w pierwszym przykładzie.
Proszę o dyskusję, nawet spór. Jak zawodowcy PHP to przedstawią
Jeśli chcesz w ciągu tekstowy wstawić złożoną zmienną (w tym tablice) musisz zapisać ją w nawiasach: echo "{$alarm_id[0][0]}";
0Tutaj możesz o tym poczytać: http://php.net/manual/en/language.types.string.php#language.types.string.parsing
0