Nou ja, of $mijn_setting nou true (boolean) of "true" (string) is, het resultaat is hetzelfde ("waar"). Dito met false/"false" ("niet waar"), dus "what could possibly go wrong" ;-)
Nou ja, of $mijn_setting nou true (boolean) of "true" (string) is, het resultaat is hetzelfde ("waar"). Dito met false/"false" ("niet waar"), dus "what could possibly go wrong" ;-)
Er is geen $mijn_setting maar mijn_setting.
true (boolean) of "true" (string) zijn compleet verschillend.
het resultaat is hetzelfde .... toevallig ??
"what could possibly go wrong"
Altijd een boolean als een boolean gebruiken en niet als string.
Mijn formulier heeft meerdere inputs die allemaal in dezelfde string (zo heet dat toch?) zijn opgenomen, en die ik dus return. Maar zoals Rob aangeeft is het misschien handiger om dit op te delen.
Persoonlijk ben ik geen voorstander van het aan elkaar rijgen van een hele hoop statische HTML. PHP is bestemd voor het dynamisch maken van dingen, laat PHP dan ook alleen actief zijn op de dynamische delen zodat je snel onderscheid kunt maken tussen wat verandert, en wat statisch is.
Hiertoe zou je kunnen overwegen om output buffering te gebruiken. Ik heb ook de indruk dan dit een nogal ondergeschoven kindje is.
Beschouw het volgende stuk code, die in wezen hetzelfde doet, maar waarbij het veel duidelijker is wat statisch is, en wat dynamisch:
<?php
$mijn_setting = true; // test
$value = 'onderwerp'; // test
ob_start(); // vang output op
// voor de leesbaarheid zou je dit "blok" in kunnen springen
?><form id="form" method="post"><?php
if ($mijn_setting) {
// NB waarschijnlijk wil je output escaping toepassen op $value, bijvoorbeeld
// met behulp van htmlspecialchars()
?><label for="onderwerp">Onderwerp</label><input type="text" id="onderwerp" value="<?php echo $value; ?>"><?php
}
// waarschijnlijk zit er nog meer in dit formulier behalve dit ene veld
// ...
?><input type="submit" value="Verstuur">
</form><?php
return ob_get_clean(); // retourneer gebufferde output
?>
Hoe meer (statische) HTML er in zo'n snippet zit, hoe beter alles leesbaar blijft met bovenstaande aanpak.