echo $begrüßung;
Ich hab mal meine derzeitige index.php aus meinem CMS hochgeladen, wenn du lust hast, könntest du ja mal drüber schauen.
http://start-navi.de/beispiele/source-index.php
Ich meinte eher, dass man auch ohne eine extra Template-Engine übersichtlich HTML und den PHP-Code der Ausgabelogik mischen kann. Das ist ja da nicht der Fall, weil du Smarty den Ausgabeteil überlasst.
Was mir aber aufgefallen ist. Für Einrückungen hatte ich in meinen Anfangstagen auch nur ein Zeichen verwendet, weil der freigehaltene linke Platz ja Verschwendung ist und von der Nutzbreite abgeht. Doch das erwies sich als nicht wirklich hilfreich beim Lesen. Zwei Zeichen ist mein Optimum, ein guter Kompromiss zwischen Lesbarkeit und Platzverbrauch.
Die Template-Variablen würde ich nicht einzeln rumliegen lassen, sondern ein assiziatives Array dafür anlegen. Das kann man auch Smartys assign() übergeben.
if ($kein_badword_in_request_uri == true)
"Wenn es wahr ist, dass $kein_badword_in_request_uri wahr ist" ist ja schon umständlich formuliert, aber
$site_exists = ($aktuelle_gruppe == true) ? true : false;
"Wenn es wahr ist, dass $aktuelle_gruppe wahr ist, dann setz $site_exists auf wahr ansonsten falsch" kann man kaum überbieten. Ein
$site_exists = $aktuelle_gruppe;
reicht, wenn $aktuelle_gruppe eine boolsche Aussage enthält. Ansonsten kann man typecasten, um garantiert ein Boolean zu erhalten.
$site_exists = (bool)$aktuelle_gruppe;
Ein Vergleich mit true ist nur dann sinnvoll, wenn man einen Vergleich mit Typberücksichtigung (===) braucht, beispielsweise bei strpos().
Ein SQL-Statement mit LIMIT 1 braucht keine Abfrageschleife. Das verwirrt nur, wenn man noch dazu in dieser ein
header("HTTP/1.1 200 ok");
findet und sich erstmal fragt: "Warum will er das denn mehrfach ausgeben?" Ein einfaches if auf das fetch-Ergebnis ist ausreichend und verständlicher.
Ich hab mir neulich Zend runtergeladen aber leider nicht zum laufen gekriegt ; was mich aber am meisten beschäftigt ist, was die Aufgabe eines Frameworks ist, was macht so ein Framework und in wieweit ist es nützlich für mich?
Ein Framework ist ein Rahmen, der dir Zugriff auf diverse Funktionalität gibt, die er mitliefert und die du immer wieder benötigst, um eine Anwendung aufzusetzen. So ein Rahmen zwingt dich auch mehr oder weniger, eine Form einzuhalten, wobei schlechte Framworks sie dir auch aufzwingen. Am Anfang steht wie bei jedem neuen Ding eine Einarbeitungszeit. Doch dann fügst du einfach nur noch deine Inhalte und Logik in den Rahmen ein und bist "schon" fertig.
echo "$verabschiedung $name";