Logo

NiftyCMS - assoziative Arrays


NiftyCMS nutzt in einigen Templates assoziative Arrays für die Übergabe der Daten an das Template.

Download NiftyCMS
home » niftycms templating » niftycms assoziative arrays »

Inhalt

PHP Arrays

Assoziative Arrays sind in der Programmiersprache PHP auch als mehrdimensionale Arrays bekannt und werden wie folgt definiert:

array('articles' => 
    array('Title' => 'Das ist der erste Beitrag',  'Description' => 'Beschreibung des ersten Beitrags'),
    array('Title' => 'Das ist der zweite Beitrag', 'Description' => 'Beschreibung des zweiten Beitrags'),
    array('Title' => 'Das ist der dritte Beitrag', 'Description' => 'Beschreibung des dritten Beitrags'),
    ...
);

Ein typisches PHP-Array

Aus Sicherheitsgründen sind PHP-Funktionen und Befehle in der Template-Engine Smarty stark eingeschränkt und Smarty muss dafür eine spezielle Notation verwenden, um solche Strukturen in Templates aufzulösen.

Assoziative Arrays

Hier kommt folgende Technik zum Einsatz, die für die Template-Engine Smarty propritaer ist und ein assoziatives Array für die Übergabe an das Template erzeugt. Demnach wird aus der folgenden PHP Notation:

$smarty->assign('Contacts',
    array('fax' => '555-222-9876',
          'email' => 'zaphod@slartibartfast.example.com',
          'phone' => array('home' => '555-444-3333',
                           'cell' => '555-111-1234')
                           )
         );
$smarty->display('index.tpl');

Array-Struktur an ein Template senden

im Arbeitsspeicher ein mehrdimensionales Array erzeugt, das vom Template verarbeitet und in seine Bestandteile zerlegt werden kann.

Template

Im Template *.tpl ist die folgende Struktur definiert, um das assoziative Array aufzulösen:

{$Contacts.fax}<br />
{$Contacts.email}<br />
{* you can print arrays of arrays as well *}
{$Contacts.phone.home}<br />
{$Contacts.phone.cell}<br />

Über den Punkt-Trenner werden die einzelnen Schlüssel-Paare angesprochen und aufgelöst.

HTML Ausgabe

Der Browser empfängt die Ausgabe des Templates und den folgenden HTML-Strom:

555-222-9876<br />
zaphod@slartibartfast.example.com<br />
555-444-3333<br />
555-111-1234<br />

Oliver Lohse - 2024-11-22

Affiliate

PHP8 und MySQL - Dynamische Webseiten mit PHP und MySQL programmieren: Alles, was Sie dafür wissen müssen, steht in diesem Buch. Profitieren Sie von einer praxisorientierten Einführung und lernen Sie alle neuen Sprachfeatures von PHP 8 kennen. Die Autoren Christian Wenz und Tobias Hauser sind erfahrene PHP-Programmierer und Datenbankspezialisten

Die Seite ist Mitglied Amazon.Partnernet und kann mit Affiliate-Links den Betrieb etwas unterstützen, für Sie ist das natürlich vollkommen kostenlos.

Seobility Score für niftycms.de

Impressum


NiftyCMS verfolgt den Zweck, ein ganz einfaches Content Management System zu entwickeln, welches nur sehr geringe Abhängigkeiten zu Drittsystemen besitzt.

Datenschutz


NiftyCMS nuntzt keinerlei Tracking- oder andere Speichermechanismen, die Rückschlüsse auf das Leserverhalten oder die individuelle IP-Adresse zulassen.

Kontakt


Sie können mit mir unter Kontakt@Oliver-Lohse.de Rücksprachen halten oder Anfragen senden. Ein aussagekräftiger Betreff hilft Mails deutlich von SPAM zu separieren.

in cooperation with: CMSWorkbench - GIMP-Handbuch - Oliver-Lohse - Smarty