borisbaer: PHP function: Wie umgehe ich, dass eine Variable jedes Mal erneut definiert werden muss?

Beitrag lesen

Du schreibst gern sehr viel, aber echt gern immer wieder nacheinander das selbe:

Ja, ich wollte das noch irgendwann zusammenfassen. ^^

Warum übernimmst Du nicht das…

if ( file_exists( $path = $subpages . 'savegame.php' ) )

in die Funktion navAnchor()??? Da hast Du doch 'savegame' schon drin. Für den Rest der Liste gilt das selbe…

Hier mein Ergebnis:

<?php

function navAnchor( $href, $name, $uri ) {

	$current = '';

    if ( !empty( $_GET['subpage'] ) ) {
        if  ( $href === $_GET['subpage'] )
            $current = 'aria-current="page"';
    } else {
        if ( $href === 'game' )
            $current = 'aria-current="page"';
    }

    $subpages = $_SERVER['DOCUMENT_ROOT'] . '/pages/' . $uri[1] . '/' . $uri[2] . '/subpages/';

    if ( file_exists( $subpages . $href . '.php' ) )
        return '<a ' . 'href="' . $href . '" ' . $current . '>' . $name . '</a>';

}

?>

<nav id="page">

    <?=navAnchor( 'game', 'Spiel', $uri );?>
    <?=navAnchor( 'releases', 'Releases', $uri );?>
    <?=navAnchor( 'merchandise', 'Merchandise', $uri );?>
    <?=navAnchor( 'guides', 'Guides', $uri );?>
    <?=navAnchor( 'emulation', 'Emulation', $uri );?>
    <?=navAnchor( 'mods', 'Mods', $uri );?>
    <?=navAnchor( 'maps', 'Maps', $uri );?>
    <?=navAnchor( 'savegame', 'Savegame', $uri );?>

</nav>

Ich habe das jetzt mal so übernommen, wie du es ersprünglich geschrieben hast: mit einem return statt eines echo. Anschließend initialisiere ich die Funktionen mit <?=, wie du ja meintest. Was ist denn eigentlich sinnvoller: Jedes mal <?= ?> zu schreiben oder einfach <?php ?> und alle Funktionen rein? Ich verstehe leider noch nicht so ganz den Sinn hinter diesen verschiednen Möglichkeiten, PHP-Code zu beginnen.

0 60

PHP function: Wie umgehe ich, dass eine Variable jedes Mal erneut definiert werden muss?

borisbaer
  • php
  1. 0
    Rolf B
    1. 0
      borisbaer
      1. 1
        Raketenwilli
        • php
        • programmiertechnik
        • programmplanung
        1. 0
          borisbaer
          1. 0
            Raketenwilli
            1. 0
              borisbaer
              1. 0
                Raketenwilli
                1. 0
                  borisbaer
                  1. 0
                    borisbaer
                    1. 0
                      Raketenwilli
                      1. 0
                        borisbaer
                        1. 1

                          PHP-Syntax: Anführungszeichen

                          Gunnar Bittersmann
                          • php
                          1. 0
                            Der Martin
                            • programmierstil
                            • syntax
                            1. 1
                              Raketenwilli
                              1. 0
                                Der Martin
                              2. 0

                                Mein höchstpersönlicher Monk bricht aus mir heraus

                                Auge
                                • menschelei
                                • programmierstil
                                • syntax
                                1. 0
                                  Gunnar Bittersmann
                                  • menschelei
                                  1. 0
                                    Auge
                                2. 0
                                  Raketenwilli
                              3. 0
                                borisbaer
                            2. 0
                              Gunnar Bittersmann
                          2. 0
                            borisbaer
                        2. 0
                          Tabellenkalk
                          1. 0
                            Raketenwilli
                          2. 1
                            Gunnar Bittersmann
                            • php
                            • programmierstil
                            1. 0
                              Tabellenkalk
                              1. 0
                                Gunnar Bittersmann
                            2. 0
                              borisbaer
                              1. 0

                                Sollte, hyperliquide Prüfung

                                Raketenwilli
                                1. 0
                                  Raketenwilli
                                  1. 0
                                    Rolf B
                                    1. 1
                                      Raketenwilli
                                2. 0
                                  borisbaer
                                  1. 0
                                    Raketenwilli
                                    1. 0
                                      Rolf B
                                      1. 0
                                        Raketenwilli
                                        1. 0
                                          Rolf B
                                        2. 0
                                          Der Martin
                                          • dateisystem
                                          • meinung
                                          1. 0
                                            Gunnar Bittersmann
                                            • cms
                                            • dateisystem
                                      2. 0
                                        borisbaer
                              2. 1
                                Rolf B
                                1. 0
                                  borisbaer
                                  1. 0
                                    Rolf B
                                    1. 0
                                      Tabellenkalk
                                    2. 0
                                      Der Martin
                                      • menschelei
                        3. 1
                          Rolf B
                          1. 0
                            Der Martin
    2. 0
      Der Martin
      1. 0
        borisbaer
        1. 0
          Der Martin
          1. 0
            borisbaer
            1. 0
              Der Martin
              1. 0
                Rolf B
        2. 1
          Gunnar Bittersmann
          • aria
          • php
          1. 1
            Gunnar Bittersmann
            • php
            • sicherheit
          2. 0
            borisbaer
            1. 0
              Gunnar Bittersmann
  2. 0
    Rolf B
    1. 0
      Gunnar Bittersmann
      • barrierefreiheit