moin,
Whoa, was ist denn das für ein Template? Wieso <?php ... ?> auf jeder einzelnen Zeile?
Kontext wechsel 😕
Und man darf in einem Template, wenn es mit PHP geschrieben ist, durchaus programmieren. Also Helper-Funktionen und -Variablen verwenden.
function renderAttribute($attrName, $value) {
if (!empty($value))
echo " $attrName='$value'";
}
mir ist es deutlich lieber wenn ich BuiltIn-Funktionen nehme
Ich zerhacke immer alles und plaziere immer alles schön seeehr weit weg 😕. Hab da gute und weniger gute Erfahrungen gemacht.
Unter anderem auch htmlspecialchars(), das fehlt bei Dir noch ganz - es sei denn das hast Du schon anderweit gemacht.
hätte ich is aber nur n Test 😉
Ich baue es hier deshalb bewusst nicht ein, aber ich denke, sowas gehört eigentlich ins Template, nicht ins Viewmodel.
ich denke nicht, weil es ja nur ein Template ist. Aber ich bin im gegensatz zu dir (einen Profil) n echtes greenhorn 😏.
isset brauchst Du nicht, empty() ist ein Sprachkonstrukt, keine Funktion und prüft isset implizit mit ab. Im Handbuch steht:
…ja ich erinner mich da an was. Danke für die Auffrischung
Damit hättest Du dann statt 7 Zeilen nur noch diese (und es ist auch kompakter, <?= ... ?> statt <? echo ...; ?> zu schreiben. Das predige ich schon länger 😉
ja aber php.ini schaltet das per Default aus und es gibt da glaube ich Probleme mit DB bezügl. SQL-Injection oder so. Lasst mich erst in der PHP-Welt ankommen 😀.
Irgend wann baue ich mal einen simplen MarkDown-PlugIn.
Es wäre dann auch sinnvoll, hinter den beiden for-Schleifen jeweils eine Variable mit dem aktuellen Schleifenwert zu setzen. Oder gleich die foreach-Schleife zu verwenden - was aber nur sinnvoll ist wenn Du $i oder $j nicht brauchst...
da habe ich auch meine Problemchen wie ich das lösen kann. Dank für den Rat.
[…] Das ist signifikant kleiner als dein Code. Ich find's auch besser lesbar.
das ist es… ich werde mich apäter damit beschäftigen, weil ichs weniger wichtig finde, Wichtig! aber weniger.
Ob es sinnvoll ist, im Schleifenkern den PHP-Modus zu verlassen, weiß ich nicht. Vermutlich nicht. […]
Kontext wechsel. Wenn ich im HTML Template bin dann notiere ich z.B. <?php echo $foobar; ?>
und <?php if ( true ) : ?>
.
lgmb