Allgemeine Frage: Variabeln aus Teilzeichenketten

In diesem Forum kann man Fragen zur Programmierung stellen, die bei der Entwicklung von Mods für phpBB 3.0.x oder dem Modifizieren des eigenen Forums auftauchen.
Forumsregeln
phpBB 3.0 hat das Ende seiner Lebenszeit überschritten
phpBB 3.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 3.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf die neuste phpBB-Version, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Antworten
isometric
Mitglied
Beiträge: 56
Registriert: 29.11.2009 09:20

Allgemeine Frage: Variabeln aus Teilzeichenketten

Beitrag von isometric »

Hallo zusammen, folgender Variablenblock führt zur Ausgabe der Variabeln 'DAY_COUNTDOWN' und 'DAY_COUNTDOWN_DESC zu den Werten z.B. "Heute", "Morgen" oder "in x Tagen"

Ich hätte gerne die Ausgabe von z.B. "Heute am 28.11.2011", also praktisch die Verknüpfung der drei Teilzeichenketten 'DMY' + "am" + 'DAY_COUNTDOWN'

Code: Alles auswählen

       $day_data = array(
                        'DMY'        =>        $day->get_dmY(),
                        'DAY_COUNTDOWN'                        =>        $countdown,
                        'DAY_COUNTDOWN_DESC'        =>        $countdown_desc
                );
kann mir jemand die Syntax nennen, wie ich diese beiden Variabeln und den Textstring zusammenbauen kann?
Gruß isometric
im www: phpBB 3.08
Style: prosilver, Mods: RedBar3 1.0.2, NV who was here 1.0.2, Simple Calendar 0.61, NewPost2Mail 0.20, view or mark unreads 1.0.5c, Print A Post Mod, acp announcementcentre 122
Benutzeravatar
gn#36
Ehrenadmin
Beiträge: 9313
Registriert: 01.10.2006 16:20
Wohnort: Ganz in der Nähe...
Kontaktdaten:

Re: Allgemeine Frage: Variabeln aus Teilzeichenketten

Beitrag von gn#36 »

Ohne weiteren Zusammenhang ist die Verknüpfung der beiden Variablen mit "am" dazwischen z.B. so zu machen:

Code: Alles auswählen

$result = "{$day_data['DMY']} am {$day_data['DAY_COUNTDOWN']}"; 
Wenn du was anderes willst bitte noch mal ausführlicher beschreiben. Geht natürlich auch mit einigen anderen Methoden.
Begegnungen mit dem Chaos sind fast unvermeidlich, Aber nicht katastrophal, solange man den Durchblick behält.
Übertreiben sollte man's im Forum aber nicht mit dem Chaos, denn da sollen ja andere durchblicken und nicht nur man selbst.
isometric
Mitglied
Beiträge: 56
Registriert: 29.11.2009 09:20

Re: Allgemeine Frage: Variabeln aus Teilzeichenketten

Beitrag von isometric »

@gn#36: vielen Dank für die Antwort:

Ich habe folgendes vor:
die Anzeige vom SimpleCalendar im Portalblock gefällt mir nicht, weil da nur "Heute","Morgen" oder "in x Tagen" ohne genaue Datumsangabe steht:
[ externes Bild ]

was ich bis jetzt herausgefunden habe ist, dass die Ausgabe durch folgenden Code in der "dates_list_module.html" erzeugt wird.

Code: Alles auswählen

		<!-- IF CAL_SHOW_COUNTDOWN -->
			<dt title="{days.TODAY}" class="dmY"><a href="{days.U_DAY}" title="{L_ADD_EVENT}">{days.DAY_COUNTDOWN_DESC}</a></dt>
		<!-- ELSE -->
			<dt title="{days.TODAY}" class="dmY"><a href="{days.U_DAY}" title="{L_ADD_EVENT}">{days.DMY}</a></dt>
		<!-- ENDIF -->
also durch die Variablen "days.DAY_COUNTDOWN_DESC", bzw. "days.DMY".

Die Variabelen werden in der Datei "calendar/common.php" definiert.

Code: Alles auswählen

$day_data = array(
		'DMY'        =>        $day->get_dmY(),
		'DAY'        =>        $day->get_day_format(),
		'D'                =>        $day->get_format('D'),
		'TODAY'        =>        $day->get_dmY() == $today->get_dmY() ? $GLOBALS['user']->lang['datetime']['TODAY'] : '',
		'NEW_WEEK'        =>        $show_breaks ? $day->get_format('W') != $old_day['W'] : false,
		'NEW_MONTH'        =>        $show_breaks ? $day->get_format('m') != $old_day['m'] : false,
		'NEW_YEAR'        =>        $show_breaks ? $day->get_format('Y') != $old_day['Y'] : false,
		'WEEK'        =>        sprintf($GLOBALS['user']->lang['_WEEK_OF_YEAR'], $day->get_format('W')),
		'MONTH'        =>        $day->get_format('F'),
		'YEAR'        =>        $day->get_format('Y'),
		'DAY_OF_WEEK'        =>        $day->get_format('w'),
		'U_DAY'        =>        $u_day->get_built(),
		'DAY_COUNTDOWN'                        => $countdown,
		'DAY_COUNTDOWN_DESC'        =>        $countdown_desc
);
durch probieren habe ich herausgefunden, dass folgender Code zum gewünschten Ergebnis führt:

Code: Alles auswählen

		'DAY_COUNTDOWN'                        => $countdown.' am '.$day->get_dmY(),
		'DAY_COUNTDOWN_DESC'        =>        $countdown_desc.' am '.$day->get_dmY()
Habe ich das jetzt richtig gemacht, oder ist es besser die beiden Variablen "DAY_COUNTDOWN" und "DAY_COUNTDOWN_DESC" irgendwie anders zu definieren?
Gruß isometric
im www: phpBB 3.08
Style: prosilver, Mods: RedBar3 1.0.2, NV who was here 1.0.2, Simple Calendar 0.61, NewPost2Mail 0.20, view or mark unreads 1.0.5c, Print A Post Mod, acp announcementcentre 122
Verschoben von Coding & Technik nach phpBB 3.0: Mod-Bastelstube am 29.11.2011 21:31 durch Pyramide

Antworten

Zurück zu „[3.0.x] Mod Bastelstube“