Ergebnis 1 bis 4 von 4

Thema: PHP Nachhilfe

  1. #1
    Contao-Nutzer Avatar von bahnfuehrer
    Registriert seit
    17.12.2010.
    Ort
    Kallmünz, Bayern
    Beiträge
    47

    Standard PHP Nachhilfe

    Ihr Lieben,

    wie bekomme ich zwischen new_start und new_end einen Bindestrich, der nicht ausgegeben wird, wenn keine Daten vorhanden sind?

    PHP-Code:
    <?php if ($this->repeatFixedDates): ?>
        <?php $arr deserialize($this->repeatFixedDates); echo $arr[2]['reason']; ?>
        <?php $arr deserialize($this->repeatFixedDates); echo $arr[2]['new_repeat']; ?>
        <?php $arr deserialize($this->repeatFixedDates); echo $arr[2]['new_start']; ?> <?php $arr deserialize($this->repeatFixedDates); echo $arr[2]['new_end']; ?>
        <?php endif ?>
    Gruß Sebastian

  2. #2
    Contao-Urgestein Avatar von fiedsch
    Registriert seit
    09.07.2009.
    Ort
    München
    Beiträge
    2.947

    Standard

    PHP-Code:
    <?php 
    if ($this->repeatFixedDates) {
        
    $arr deserialize($this->repeatFixedDates); 
        echo 
    $arr[2]['reason'];
        echo 
    $arr[2]['new_repeat'];
        echo 
    $arr[2]['new_start'];
        if (
    $arr[2]['new_start'] && $arr[2]['new_end']) {
          echo 
    '-';
        } 
        echo 
    $arr[2]['new_end']; 

    ?>
    Anmerkung: ich finde den Code besser lesbar, wenn nicht jeder Befehl einzeln in <?php ...?> "geklammert" wird. Außerdem kannst Du Dir so sparen $this->repeatFixedDates mehrfach zu deserialisieren.
    Contao-Community-Treff Bayern: http://www.contao-bayern.de

  3. #3
    Contao-Fan Avatar von eS_IT
    Registriert seit
    21.07.2010.
    Ort
    Werne a. d. Lippe
    Beiträge
    585
    Partner-ID
    6161
    User beschenken
    Wunschliste

    Standard

    Hallo Sebastian,

    wenn ich es richtig überflogen habe, gibt es keinen Grund, dass Array mehrfach zu deserialisieren. Außerdem kann man den ganzen Block zusammenziehen da er ja zusammengehört. Der Bindestrich wird jetzt durch die if-Abfrage nur ausgegeben, wenn sowohl $arr[2]['new_start'] als auch $arr[2]['new_end'] vorganden sind.

    PHP-Code:
    <?php 
    if ($this->repeatFixedDates) {
        
    $arr deserialize($this->repeatFixedDates);
        echo 
    $arr[2]['reason']; 
        echo 
    $arr[2]['new_repeat'];
        echo 
    $arr[2]['new_start'];
        if (
    $arr[2]['new_start'] && $arr[2]['new_end']) { echo '-'; }
        echo 
    $arr[2]['new_end'];
    }
    ?>
    Ich hoffe dies hilft Dir weiter.

    Viele Grüße,
    eS_IT

    EDIT: Mist, zuspät.
    Geändert von eS_IT (22.11.2017 um 16:55 Uhr) Grund: Zu spät
    Viele Grüße,
    eS_IT
    --
    e@sy Solutions IT - Ihr Partner für professionelle Softwareentwicklung
    Website - Contao Codebook - Partnerprofil - GitHub

  4. #4
    Contao-Nutzer Avatar von bahnfuehrer
    Registriert seit
    17.12.2010.
    Ort
    Kallmünz, Bayern
    Beiträge
    47

    Standard

    Ihr seid richtig krass ;-)

    herzlichen Dank für Eure Unterstützung

Aktive Benutzer

Aktive Benutzer

Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)

Lesezeichen

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •