From 75124b0197a20947b67b502db19af79d4936f306 Mon Sep 17 00:00:00 2001
From: Marius Burkard <m.burkard@pixcept.de>
Date: Wed, 02 Mar 2016 05:43:11 -0500
Subject: [PATCH] Merge branch 'stable-3.1'
---
CODING_NOTES.php.txt | 94 +++++++++++++++++++---------------------------
1 files changed, 39 insertions(+), 55 deletions(-)
diff --git a/CODING_NOTES.php.txt b/CODING_NOTES.php.txt
index 8288a03..88afcef 100644
--- a/CODING_NOTES.php.txt
+++ b/CODING_NOTES.php.txt
@@ -1,72 +1,66 @@
-Some guidelines for web development with php.
+Some guidelines for web development with PHP.
-----------------------------------------------------
* Unix Line Breaks Only, NO windows breaks please.
-* Tabs set at 4 spaces either as tabs or spaces.
+* Tabs to indent lines, NO spaces
* no accidental _<?php space before, within or after a file
-* every php file starts and end with <?php ?> no spaces before or after
-* error_reporting(E_ALL|E_STRICT) , yep php5
-* Magic quotes is gone in php6, get used to it now. config = magic_quotes_gpc() Everything must be quoted
-* Don't use ereg,split and other old function -> gone in php 5.4 or 6 (different information on php.net) http://www.php.net/manual/en/migration53.deprecated.php
-* Don't use shorttags. A Shorttag is <? and that is confusing with <?xml -> always <?php
+* every PHP file starts and end with <?php ?> no spaces before or after
+* error_reporting(E_ALL|E_STRICT), yep PHP 5
+* Magic quotes is gone, get used to it now. config = magic_quotes_gpc() Everything must be quoted
+* Don't use ereg, split and other old function -> gone in PHP 5.4
+* Don't use features that are not supported in PHP 5.3, for compatibility with LTS OS releases, ISPConfig must support PHP 5.3+
+* Don't use shorttags. A Shorttag is <? and that is confusing with <?xml -> always usw <?php
+* Don't use namespaces
* Column names in database tables and database table names are in lowercase
* Classes for the interface are located in interface/lib/classes/ and loaded with $app->uses() or $app->load() functions.
* Classes for the server are located in server/lib/classes/ and loaded with $app->uses() or $app->load() functions.
-
-please mark any section that need review or work on with
-// TODO
-* Add documentation about access levels (public, private, protected).
+* please mark any section that need review or work on with /* TODO: short description */
* Make function / var names on the following way, first word lower, next word(s) first letter upper like. getFirstResult();
-
-Pear coding guidelines
+* always a space but NO newline before opening braces, e. g.
+class abc {
+ public function cde() {
+ if($a == $b) {
+ return false;
+ }
+ }
+}
+* no spaces after function/method or control names, e. g.
+function abc($x, $y) {
+ if($condition == true) {
+ $x = 2;
+ }
+}
+and NOT
+function abc ($x, $y) {
+ if ( $condition == true ) {
+
+ }
+}
//*****************************************************************************
// Commenting style
//*****************************************************************************
-phpdoc is used for creating and autogenerating the documentation, this means that
-some of the comments can be formatted to be included in documentation.
-ie the source files are scanned then processed and html docs are created.
The comments break down into the following types
// is uses for removing lines and debug dev etc
-//** and //* are used as "sub comments"
/*
- is used to comment out blocks
+ is used to comment out blocks
*/
+
/** is used to create documentaion
-* thats over
-* lines
-*/
+ * thats over
+ * lines
+ */
If you need to block out a section then use
/*
function redundant_code(){
- something here
+ something here
}
*/
To block out single lines use // and all // are assumed to be redundant test code and NOT comments
// print_r($foo);
-
-For inline comment use //** and //* eg
-
-//** Decide what do do
-switch($decide){
- //* blow it up
- case 'baloon':
- $foo->gas(+1);
- // test_pressure(); << inline comment
- break;
-
- //* Do default action
- default:
- do_land();
- get_gps();
- //* following grant greaceful exit
- //basket_exit_crash();
- basket_exit();
-
-}
Do not use the phpdoc on every function, eg
@@ -77,25 +71,15 @@
*/
>>
function login($user, $pass){
-.......
+
}
<<
-as this function explains its self, the following clean code will suffice
+as this function is self-explaining, the following clean code will suffice
>>
function login($user, $pass){
-.......
+
}
-If you do need to explain a function then put un the summary syntax eg
-
-/** Pass an array of values where third param is bar
-* $foo['bar'] = 1; // allow a user
-* $foo['bar'] = 2; // destroy user
-* $foo['bar'] = -1; // recreate
-*/
-public function do_something($x, $y, $foo){
-... do something interesting
-}
//*****************************************************************************
// Where to store custom settings
--
Gitblit v1.9.1