Gunnar Bittersmann: SVGs in MVC-Framework organisieren

Beitrag lesen

@@Der Martin

Den Code würde ich dir beim Review nicht durchgehen lassen.

soso. Warum nicht?

Bei { ?> und <?php } biegen sich die Fußnägel.

Gunnar, du sprichst mit mehreren Zungen. Sonst propagierst du immer, den PHP-Modus vorübergehend zu beenden, um direkte Ausgaben an den Client zu machen, und hier schlägst du wieder ein echo vor.

Naja, eine alternative Syntax für Funktionen wie bei den Kontrollstrukturen sieht PHP wohl nicht vor‽

<?php function checkbox(): ?>
	<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 288 288">
		<path class="a" d="M272,156v84a32,32,0,0,1-32,32H48a32,32,0,0,1-32-32V48A32,32,0,0,1,48,16H240a32,32,0,0,1,32,32V158.65"/>
		<polyline class="b" points="271.7 46.4 143 175.1 94.9 127.1"/>
	</svg>
<?php endfunction; ?>

Aber wozu überhaupt eine Funktion?

$checkboxSVG = <<<EOT
    <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 288 288">
      <path class="a" d="M272,156v84a32,32,0,0,1-32,32H48a32,32,0,0,1-32-32V48A32,32,0,0,1,48,16H240a32,32,0,0,1,32,32V158.65"/>
      <polyline class="b" points="271.7 46.4 143 175.1 94.9 127.1"/>
    </svg>
EOT;

und an den Stellen im Template <?php echo $checkboxSVG; ?>
bzw. kurz <?= $checkboxSVG ?>.

Aber warum nicht den SVG-Code in eine Datei checkbox.svg und diese einbinden?

Das ist wesentlich sauber und eleganter, zugegeben. Das schlägt beide zuvor genannten Beispiele.

Und wohl auch das eben genannte.

🖖 Живіть довго і процвітайте

--
„Im Vergleich mit Elon Musk bei Twitter ist ein Elefant im Porzellanladen eine Ballerina.“
— @Grantscheam auf Twitter
0 38

SVGs in MVC-Framework organisieren

borisbaer
  • php
  • svg
  1. 0
    Gunnar Bittersmann
    1. 0
      Der Martin
      1. 0
        Gunnar Bittersmann
        1. 0
          Gunnar Bittersmann
          • performance
          • php
        2. 0
          Rolf B
          1. 0
            Gunnar Bittersmann
            • php
            • programmierstil
            1. 0
              Rolf B
          2. 0
            borisbaer
    2. 0
      borisbaer
      1. 0
        Gunnar Bittersmann
        • barrierefreiheit
        • css
        • ux
        1. 0
          Gunnar Bittersmann
          • barrierefreiheit
          • html
        2. 0
          Gunnar Bittersmann
          • design
          • formulare
          • ux
        3. 0
          Gunnar Bittersmann
          • css
          • design
          • ux
        4. 0
          borisbaer
          1. 0
            Gunnar Bittersmann
            • ux
          2. 0
            Der Martin
            1. 1
              Tabellenkalk
              1. 0
                Gunnar Bittersmann
                1. 0
                  Tabellenkalk
                  1. 0
                    Gunnar Bittersmann
                    • menschelei
        5. 0
          borisbaer
          1. 1
            Gunnar Bittersmann
            • design
            • ux
            • zitat
            1. 0
              Gunnar Bittersmann
              1. 0
                Robert B.
                1. 0
                  Der Martin
                  1. 0
                    Gunnar Bittersmann
                  2. 0
                    Robert B.
                    • design
                    • offtopic
                    • ux
  2. 0
    Gunnar Bittersmann
    • svg
    • tools
    1. 0
      borisbaer
  3. 1
    Rolf B
    1. 0
      Matthias Scharwies
      1. 0
        Rolf B
        1. 0
          Matthias Scharwies
          1. 0
            Rolf B
            1. 0
              Matthias Scharwies
              1. 0
                Rolf B
      2. 0

        SVG: use-element + css-animation

        Matthias Scharwies