Generelle PHP regler
Koden må følge disse standardene: PSR-1, PSR-2, PSR-12
Kommentarer
Prøv å holde kommentarer til minimum, dette tvinger en til å tenke over hva en kaller variabler og metoder. Mer komplisert logikk som fks. Regex burde alltid legges til en egen metode med et fornuftig navn slik at det er enkelt å lese koden der hvor denne er i bruk.
Dårlig praksis:
/**
* Here we replace all of the letters B with A.
*/
$result = preg_replace('/B/', 'A', $string);
God praksis:
function replaceBWithA($string)
{
return preg_replace('/B/', 'A', $string);
}
Strenger
Bruk “interpolation” når det er mulig istedenfor å skjøte sammen ved bruk av “.”.
// Dårlig praksis:
$greeting = 'Hi, I am ' . $name . '.';
// God praksis:
$greeting = "Hi, I am {$name}.";
Kontrollstrukturer
Alltid bruk krøllparanteser.
// Dårlig praksis:
if ($condition) ...
// God praksis:
if ($condition) {
...
}
Alltid sjekk på det som kan gå galt først i en funksjon, dette gjør koden mer lesbar.
// Dårlig praksis:
if ($goodCondition) {
// Do work
}
throw new Exception;
// God praksis:
if (! $goodCondition) {
throw new Exception;
}
Unngå å bruke `else så ofte som mulig, dette gjør koden mer lesbar.
// Dårlig praksis:
if ($conditionA) {
if ($conditionB) {
// Condition A and B passed.
} else {
// Condition A passed, B failed.
}
} else {
// Condition A failed.
}
// God praksis:
if (! $conditionA) {
// Condition A failed.
return;
}
if (! $conditionB) {
// Condition B failed.
return;
}
// Condition A and B passed.
Så ofte som mulig burde flere if statements
brukes istedenfor sammensatte if statements
for å øke lesbarheten:
// Dårlig praksis:
if ($conditionA && $conditionB && $conditionC) {
// do stuff
}
// God praksis:
if (! $conditionA) {
return;
}
if (! $conditionB) {
return;
}
if (! $conditionC) {
return;
}
Her kan det også fordelaktig benyttes egene metoder med beskrivende navn.
if ($this->shouldMakePost()) {
// Do stuff
}