<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://www.wiki.leomartin.net/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://www.wiki.leomartin.net/feed.php">
        <title>DokuWiki phpsqlet</title>
        <description></description>
        <link>https://www.wiki.leomartin.net/</link>
        <image rdf:resource="https://www.wiki.leomartin.net/lib/tpl/dokuwiki/images/favicon.ico" />
       <dc:date>2026-04-10T16:57:28+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:arrays_functions&amp;rev=1460558973&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:arrays&amp;rev=1460555388&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:associative_arrays&amp;rev=1460558989&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:booleans&amp;rev=1460559179&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:break&amp;rev=1460567107&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:changing_the_document_root&amp;rev=1460542932&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:configuring_mysql&amp;rev=1460548485&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:configuring_php&amp;rev=1460544782&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:constants&amp;rev=1460561469&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:continue&amp;rev=1460566888&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:else_and_elseif_statements&amp;rev=1460562070&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:embedding_php_code_on_a_page&amp;rev=1460549329&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:enabling_php&amp;rev=1460543731&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:for_loops&amp;rev=1460565797&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:foreach_loops&amp;rev=1460566239&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:if_statements&amp;rev=1460561896&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:inserting_code_comments&amp;rev=1460550118&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:installation_overview&amp;rev=1460540711&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:installing_mysql&amp;rev=1460547717&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:logical_operators&amp;rev=1460562624&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:null_and_empty&amp;rev=1460559667&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:numbers_part_one_-_integers&amp;rev=1460553371&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:numbers_part_two_-_floating_points&amp;rev=1460554508&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:outputting_dynamic_text&amp;rev=1460549707&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:overview&amp;rev=1460541257&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:string_functions&amp;rev=1460552454&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:strings&amp;rev=1460551123&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:switch_statements&amp;rev=1460564247&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:text_editor&amp;rev=1460548755&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:the_history_of_php&amp;rev=1460540045&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:the_operational_trail&amp;rev=1460549921&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:type_juggling_and_casting&amp;rev=1460560865&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:upgrading_php&amp;rev=1460543954&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:variables&amp;rev=1460550646&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:what_is_php&amp;rev=1460539658&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:while_loops&amp;rev=1460565200&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:why_choose_php&amp;rev=1460540309&amp;do=diff"/>
                <rdf:li rdf:resource="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:working_with_apache_web_server&amp;rev=1460542162&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://www.wiki.leomartin.net/lib/tpl/dokuwiki/images/favicon.ico">
        <title>DokuWiki</title>
        <link>https://www.wiki.leomartin.net/</link>
        <url>https://www.wiki.leomartin.net/lib/tpl/dokuwiki/images/favicon.ico</url>
    </image>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:arrays_functions&amp;rev=1460558973&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T16:49:33+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:arrays_functions</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:arrays_functions&amp;rev=1460558973&amp;do=diff</link>
        <description>&lt;- Associative arraysBooleans -&gt;
Array Functions

Beaucoup de fonctions.


$a = array(3,2,4);

// count, min, max

echo count($a); // 3 : longueur
echo min($a); // 2 : valeur minimum
echo max($a); // 4 : valeur maximum



/sort, rsort

// fonction destructive : agit sur le tableau
sort($a); // 2,3,4 : tri croissant
rsort($a); // 4,3,2 : tri décroissant



// implode, explode

$string = implode(&quot; * &quot;, $a); // &quot;4 * 3 * 2&quot;
$b = explode(&quot; * &quot;,$string); // 4,3,2 : crée un array


// recherche
echo in…</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:arrays&amp;rev=1460555388&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T15:49:48+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:arrays</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:arrays&amp;rev=1460555388&amp;do=diff</link>
        <description>&lt;- Numbers part two - Floating pointsAssociative arrays -&gt;
arrays

-&gt; an array is an ordered, integer-indexed collection of objects (0-based)


$numbers = array(); // array vide
$numbers = array(2,4,6,8);
echo $numbers[0]; // 2

$mixed = array(2, &quot;quatre&quot;, 6, array(&quot;x&quot;, &quot;y&quot;, &quot;z&quot;));
echo $mixed[2]; // 6
echo &quot;&lt;pre&gt;&quot;;
echo print_r($mixed[3]);
echo &quot;&lt;/pre&gt;&quot;;

$mixed[2] = &quot;i&quot;;
$mixed[5] = &quot;o&quot;; // fonction mais $mixed[4] inexistant
$mixed[] = &quot;o&quot;; // peuple la prochaine case</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:associative_arrays&amp;rev=1460558989&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T16:49:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:associative_arrays</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:associative_arrays&amp;rev=1460558989&amp;do=diff</link>
        <description>&lt;- ArraysArrays functions -&gt;
associative Arrays

-&gt; an object-indexed collection of objects

-&gt; couples clé/valeur

compare

	*  array :
		*  si l'ordre est important

	*  associative array
		*  si avoir un “reference label” est important



$assoc = array(); // empty associated/regular array
$assoc = array(&quot;first_name&quot; =&gt; &quot;Maurice&quot;, &quot;last_name&quot; =&gt; &quot;Dupont&quot;);

echo $assoc[&quot;first_name&quot;] . &quot; &quot; . $assoc[&quot;last_name&quot;]; // &quot;Maurice Dupont&quot;
$assoc[&quot;first_name&quot;] = &quot;José&quot;;
echo $assoc[&quot;first_name&quot;] . &quot; &quot;…</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:booleans&amp;rev=1460559179&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T16:52:59+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:booleans</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:booleans&amp;rev=1460559179&amp;do=diff</link>
        <description>&lt;- Arrays functionsNULL and empty -&gt;
Booleans

true or false.


$bool = true; // ou TRUE, case insensitive
$bool = false; // ou FALSE

echo is_bool($bool); // test de booléanité (bô néologisme)</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:break&amp;rev=1460567107&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T19:05:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:break</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:break&amp;rev=1460567107&amp;do=diff</link>
        <description>&lt;- ContinueUnderstanding array pointers -&gt;
Break

Rencontré dans le code, il indique la sortie d'une boucle.


for (...) {
  break;
}


break niché

Même chose qu'avec continue


for (...) {
  for (...) {
    break(1); // cible la boucle actuelle
    break(2); // cible la boucle parente
  }
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:changing_the_document_root&amp;rev=1460542932&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T12:22:12+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:changing_the_document_root</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:changing_the_document_root&amp;rev=1460542932&amp;do=diff</link>
        <description>&lt;- Working with Apache Web ServerInstalling to Yosemite -&gt;
Changing the Document Root

Le document root est le répertoire où l'on va stocker nos sites.

Par défaut : /Library/WebServer/Documents

On va créer un User Document Root : ~/Sites (plus présent depuis OSX 10.8)

configurer


sudo nano /etc/apache2/users/&lt;username&gt;.conf (fichier potentiellement inexistant par défaut).</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:configuring_mysql&amp;rev=1460548485&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T13:54:45+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:configuring_mysql</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:configuring_mysql&amp;rev=1460548485&amp;do=diff</link>
        <description>&lt;- Installing MySQLText editor -&gt;
Configure MySQL

	*  ajouter MySQL au PATH
	*  Configurer un mot de passe root
		*  Par défault : pas de mot de passe (dans le passé, maintenant mot de passe temporaire ?)


ajouter mySQL au PATH

PATH : liste de répertoires utilisée par Unix pour localiser les programmes</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:configuring_php&amp;rev=1460544782&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T12:53:02+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:configuring_php</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:configuring_php&amp;rev=1460544782&amp;do=diff</link>
        <description>&lt;- Upgrading PHPInstalling MySQL -&gt;
Configuring PHP

à configurer

	*  error reporting
	*  output buffering
	*  timezone

-&gt; sur la page php info, noter la partie “loaded configuration files” et “Scan this dir for additionnal .ini files”


sudo nano /usr/local/php5/lib/php.ini

// chercher le paramètre display_error On/Off, par défaut sur On pour développement
// chercher le paramètre error_reporting, defaut E_ALL, si PHP inférieur à v5.4 changer à E_ALL | E_STRICT 
// chercher html_errors (form…</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:constants&amp;rev=1460561469&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T17:31:09+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:constants</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:constants&amp;rev=1460561469&amp;do=diff</link>
        <description>&lt;- Type juggling and castingIf statements -&gt;
constants

	*  à l'opposé d'une variable, sa valeur ne change pas
	*  NOM EN CAPITALE, pas de signe $ devant
	*  la seul manière de définir une constante en PHP est d'utiliser une fonction


$max_value = 10;
define(&quot;MAX_VALUE&quot;, 10); // possible de define une constant une seule fois, pas de possibilité de la changer non plus.
echo MAX_VALUE;</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:continue&amp;rev=1460566888&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T19:01:28+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:continue</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:continue&amp;rev=1460566888&amp;do=diff</link>
        <description>&lt;- Foreach loopsBreak -&gt;
Continue

-&gt; rencontré dans une boucle signifie de passer directement à l'itération suivante.

-&gt; utile pour skipper grosses portions de code sans if



foreach( array(0, 1, 2) as $value ) {
  if ($value) {
    continue;
  }
  echo $value;
} // 0, 1 étant assimilable à true
&lt;code&gt;

==== boucle nichée ====

On accède aux boucles parents en passant en argument un chiffre.

&lt;code&gt;
for (...) {
  for (...) {
   continue(1); // cible la boucle actuelle
   continue(2); // cible…</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:else_and_elseif_statements&amp;rev=1460562070&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T17:41:10+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:else_and_elseif_statements</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:else_and_elseif_statements&amp;rev=1460562070&amp;do=diff</link>
        <description>&lt;- If statementsLogical operators -&gt;
else and elseif


if (expression) {
  // code
} elseif (expression) {
  // code
} else {
  // code
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:embedding_php_code_on_a_page&amp;rev=1460549329&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T14:08:49+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:embedding_php_code_on_a_page</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:embedding_php_code_on_a_page&amp;rev=1460549329&amp;do=diff</link>
        <description>&lt;- Text editorOutputting dynamic text -&gt;

&lt;?php // &lt;- balise ouvrante

//code

?&gt; //&lt;- balise fermante



// Short-Open Tags (bad forms, peut nécessiter une configuration supplémentaire pour la portabilité)

&lt;? ?&gt;
&lt;?= ?&gt; // accepté dans le PSR0



// ASP-Style Tags (very bad form)

&lt;% %&gt;
&lt;%= %&gt;</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:enabling_php&amp;rev=1460543731&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T12:35:31+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:enabling_php</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:enabling_php&amp;rev=1460543731&amp;do=diff</link>
        <description>&lt;- Installing to YosemiteUpgrading PHP -&gt;
Enabling PHP


php -v // Version de PHP installée


Configuration

-&gt; /etc/apache2/httpd.conf


sudo nano /etc/apache2/httpd.conf

// CTRL+W pour rechercher (Where Is)
// on recherche 'php'
// on décommente la ligne suivante pour activer php :
LoadModule php5_module libexec/apache2/libphp5.so</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:for_loops&amp;rev=1460565797&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T18:43:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:for_loops</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:for_loops&amp;rev=1460565797&amp;do=diff</link>
        <description>&lt;- While loopsForeach loops -&gt;
For Loops


for (expr1; expr2; expr3) {
  // expr1 exécutée uniquement avant la première boucle
  // expr 2 expression de test exécuté au début de chaque loop pour déterminer si la boucle continue
  // expr 3 exécuté à la fin de chaque boucle
  statement;
}

for (initial; test; each) {
  statement;
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:foreach_loops&amp;rev=1460566239&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T18:50:39+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:foreach_loops</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:foreach_loops&amp;rev=1460566239&amp;do=diff</link>
        <description>&lt;- For loopsContinue -&gt;
foreach Loops

Boucle au travers d'un array. Fin de l'array = fin de la boucle.


foreach ($array as $value) {
  statement.
}

// aussi

foreach ($array as $key =&gt; $value) {
  statement.
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:if_statements&amp;rev=1460561896&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T17:38:16+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:if_statements</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:if_statements&amp;rev=1460561896&amp;do=diff</link>
        <description>&lt;- ConstantsElse and elseif statements -&gt;
If statements

syntaxe de base


if (expression) // si expression évaluée à true
  statement;



if (expression) {
  // code sur plusieurs lignes, bonne pratique même si une seule ligne de code.
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:inserting_code_comments&amp;rev=1460550118&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T14:21:58+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:inserting_code_comments</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:inserting_code_comments&amp;rev=1460550118&amp;do=diff</link>
        <description>&lt;- The operational trailVariables -&gt;
Inserting code comment

-&gt; rendre le code compréhensible rapidement ! très important !


&lt;?php
// single-ligne comment
# alternative moins commune, single-line comment

/*
  multiple-lines comment
*/
?&gt;</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:installation_overview&amp;rev=1460540711&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T11:45:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:installation_overview</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:installation_overview&amp;rev=1460540711&amp;do=diff</link>
        <description>&lt;- Why choose PHPOverview -&gt;
Installation overview

Nécessaire

	*  web server (local ou distant) (Apache)
	*  PHP (version 5.x)
	*  base de donnée (MySQL 5.x) 
	*  éditeur texte
	*  navigateur web

Combinaisons les plus communes, appelées le &quot;stack&quot; :

	*  LAMP : Linux + Apache + MySQL + PHP</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:installing_mysql&amp;rev=1460547717&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T13:41:57+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:installing_mysql</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:installing_mysql&amp;rev=1460547717&amp;do=diff</link>
        <description>&lt;- Configuring PHPConfiguring MySQL -&gt;
dev.mysql.com/downloads/mysql -&gt; MySQL Community Server</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:logical_operators&amp;rev=1460562624&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T17:50:24+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:logical_operators</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:logical_operators&amp;rev=1460562624&amp;do=diff</link>
        <description>&lt;- Else and elseif statementsSwitch statements -&gt;
Comparison and Logical Operators

	*  opérateurs de comparaison
		*  equal : ==
		*  identical ===
		*  compare : &gt; &lt; &gt;= &lt;= &lt;&gt;
		*  not equal : !=
		*  not identical : !==

	*  opérateur logique
		*  et : &amp;&amp;
		*  ou : ||
		*  not : !



if ( (true &amp;&amp; false) || (true || false) ) { //true
  // code
  echo 'true';
}

if (!isset($e)) {
  $e = 200;
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:null_and_empty&amp;rev=1460559667&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T17:01:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:null_and_empty</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:null_and_empty&amp;rev=1460559667&amp;do=diff</link>
        <description>&lt;- BooleansType juggling and casting -&gt;
NULL and empty

null

“NULL is a fancy term for nothing, for not having a value, it's not zero, not empty String, it's the actual lack of a value.”

-&gt; Permet d'assigner une variable à une absence de valeur.


$n = null; // or NULL, case-insensitive
$m = &quot;hi&quot;;

echo is_null($n);
echo isset($n); // false
echo isset($m); // true
echo isset($o); // false (variable non déclarée).</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:numbers_part_one_-_integers&amp;rev=1460553371&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T15:16:11+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:numbers_part_one_-_integers</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:numbers_part_one_-_integers&amp;rev=1460553371&amp;do=diff</link>
        <description>&lt;- String functionsNumbers part two - Floating points -&gt;
Numbers part one : integers


echo abs(0 - 300); // 300 : valeur absolue
echo pow(2,8); // exponentiel
echo srqt(100); // racine carrée
echo fmod(10,3); // 1 : reste
echo rand(); // 1909624690 : nombre aléatoire
echo rand(min,max); // idem avec min et max spécifiés.</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:numbers_part_two_-_floating_points&amp;rev=1460554508&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T15:35:08+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:numbers_part_two_-_floating_points</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:numbers_part_two_-_floating_points&amp;rev=1460554508&amp;do=diff</link>
        <description>&lt;- Numbers part one - IntegersArrays -&gt;
numbers part two : floating points

Nombres entiers et à virgule stockés différement en mémoire.


$float = 3.14;
echo $float+7; // 10.14
echo 3/4; // 0.75
echo 1/0; // erreur : division par zéro


fonctions


echo round(3.14); // 3 : arrondi le plus proche
echo round(3.14,1); // 3.1 : 1 chiffre après la virgule
echo ceil(3.14); // 4 : arrondi supérieur
echo floor(3.14); // 3 : arrondi inférieur

// note : echo output true as 1 et false as rien du tout

ec…</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:outputting_dynamic_text&amp;rev=1460549707&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T14:15:07+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:outputting_dynamic_text</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:outputting_dynamic_text&amp;rev=1460549707&amp;do=diff</link>
        <description>&lt;- Embedding PHP code on a pageThe operational trail -&gt;
Outputting dynamic text

	*  echo -&gt; print ce qu'indiqué en argument.
	*  . -&gt; concaténation</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:overview&amp;rev=1460541257&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T11:54:17+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:overview</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:overview&amp;rev=1460541257&amp;do=diff</link>
        <description>&lt;- Installation overviewWorking with Apache Web Server -&gt;
Nécessaire

	*  Apache web server
		*  v.2.2 inclue avec mac OS 10.9
		*  l'option Web Sharing que l'on peut trouver dans les préférence système a été otée
		*  le répertoire site aussi enlevé (il faut le recréer)
		*  faire un peu de configuration</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:string_functions&amp;rev=1460552454&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T15:00:54+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:string_functions</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:string_functions&amp;rev=1460552454&amp;do=diff</link>
        <description>&lt;- StringsNumbers part one - Integers -&gt;
string functions

.=


$un = &quot;&quot;;
$un .= &quot;un&quot;;


lower/uppercase etc.

	*  strtolower($String) -&gt; lowercase
	*  strtoupper($String) -&gt; uppercase
	*  ucfirst($String) -&gt; capitalize first character
	*  ucwords($String) -&gt; capitalize words

length</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:strings&amp;rev=1460551123&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T14:38:43+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:strings</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:strings&amp;rev=1460551123&amp;do=diff</link>
        <description>&lt;- VariablesString functions -&gt;
Strings

	*  set of characters between quotation marks ' ou “ (préférables).

concaténation


$alpha = &quot;alpha&quot;;
$beta = &quot;beta&quot;;
$phrase = $alpha . &quot; &amp; &quot; . $beta;
echo $phrase;


variable replacement

-&gt; Ne fonctionne qu'avec les double-quotes.</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:switch_statements&amp;rev=1460564247&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T18:17:27+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:switch_statements</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:switch_statements&amp;rev=1460564247&amp;do=diff</link>
        <description>&lt;- Logical operatorsWhile loops -&gt;
switch statement

Similaire à else if.

syntaxe


switch ('contact') {
  case 'email':
    statement;
    break; // si pas de break le code des autres case sera exécuté jusqu'à atteindre un break ou la fin du bloc..
  case 'phone':      // dans les deux cas 'phone' et 'telephone'
  case 'telephone':  // le code sera exécuté
    statement;
    break;
  default:
    statement;
    break; // optionnel pour le dernier cas</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:text_editor&amp;rev=1460548755&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T13:59:15+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:text_editor</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:text_editor&amp;rev=1460548755&amp;do=diff</link>
        <description>&lt;- Configuring MySQLEmbedding PHP code on a page -&gt;
Text editor

	*  essential features
		*  coloration du code, syntax highlighting
		*  navigation au sein de projet
		*  bon rechercher et remplacer
		*  auto-pairing of bracket, parentheses, and quotes

	*  Preferres features
		*  auto-indent
		*</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:the_history_of_php&amp;rev=1460540045&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T11:34:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:the_history_of_php</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:the_history_of_php&amp;rev=1460540045&amp;do=diff</link>
        <description>&lt;- What is PHPWhy choose PHP -&gt;
	*  V.1 : 1994
		*  CGI binaries ion the C programming language

	*  V.2 : 1995 (première version publique, interprête les données envoyées par les web forms)
		*  “Personal Home Page Tools”

	*  V.3 : 1998 (change dramatically, +popularité)</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:the_operational_trail&amp;rev=1460549921&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T14:18:41+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:the_operational_trail</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:the_operational_trail&amp;rev=1460549921&amp;do=diff</link>
        <description>&lt;- Outputting dynamic textInserting code comments -&gt;
Operational Trail

Request-Response cycle

browser -&gt; apache (find file) -&gt; server/db -&gt; apache (PHP processing) -&gt; HTML -&gt; Browser</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:type_juggling_and_casting&amp;rev=1460560865&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T17:21:05+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:type_juggling_and_casting</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:type_juggling_and_casting&amp;rev=1460560865&amp;do=diff</link>
        <description>&lt;- NULL and emptyConstants -&gt;
type Juggling ans Casting

D'un type à l'autre -&gt; type juggling

Spécifier soi-même le type : type casting


settype($var, &quot;integer&quot;);
(integer) $var; // idem


valeurs possibles

	*  string
	*  int, integer
	*  float
	*  array
	*  bool, boolean</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:upgrading_php&amp;rev=1460543954&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T12:39:14+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:upgrading_php</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:upgrading_php&amp;rev=1460543954&amp;do=diff</link>
        <description>&lt;- Enabling PHPConfiguring PHP -&gt;
Upgrade PHP

-&gt; php.net pour voir la dernière version stable

-&gt; php.net/manual/en/ -&gt; check for installation on X

-&gt; using packages</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:variables&amp;rev=1460550646&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T14:30:46+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:variables</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:variables&amp;rev=1460550646&amp;do=diff</link>
        <description>&lt;- Inserting code commentsStrings -&gt;
Variables

Un symbole faisant variable à une référence.

Règles

	*  commence par $
	*  $ suivi d'une lettre ou d'un _
	*  peut contenir des lettres, chiffres, _ ou - (on note qu'il faut nécessairement des espaces autour de l'opérateur - du coup)</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:what_is_php&amp;rev=1460539658&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T11:27:38+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:what_is_php</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:what_is_php&amp;rev=1460539658&amp;do=diff</link>
        <description>&lt;- Using the exercise filesThe history of PHP -&gt;
	*  server-side scripting language
	*  langage non-compilé
	*  conçu pour être utilisé avec HTML
	*  plus de flexibilité que le HTML seul
	*  syntaxe similaire au C, Java, Perl

script vs programme

script

	*  s'exécute suite à un événement</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:while_loops&amp;rev=1460565200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T18:33:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:while_loops</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:while_loops&amp;rev=1460565200&amp;do=diff</link>
        <description>&lt;- Switch statementsFor loops -&gt;
while loops


while (expression) { // tant qu'on évalue l'expression à true
  statement; // on exécute le bloc de statements.
}</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:why_choose_php&amp;rev=1460540309&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T11:38:29+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:why_choose_php</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:why_choose_php&amp;rev=1460540309&amp;do=diff</link>
        <description>&lt;- The history of PHPInstallation overview -&gt;
Why choose PHP

	*  open-source, libre
	*  multi-plateforme (développement/déploiement, usage)
	*  puissante, robuste et scalable
	*  Conçu pour le web
	*  peut être objet orienté depuis la version 5
	*  Great documentation in many languages</description>
    </item>
    <item rdf:about="https://www.wiki.leomartin.net/doku.php?id=phpsqlet:working_with_apache_web_server&amp;rev=1460542162&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2016-04-13T12:09:22+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>phpsqlet:working_with_apache_web_server</title>
        <link>https://www.wiki.leomartin.net/doku.php?id=phpsqlet:working_with_apache_web_server&amp;rev=1460542162&amp;do=diff</link>
        <description>&lt;- OverviewChanging the document root -&gt;
working with Apache Web Server

Une alternative : depuis PHP v.5.4, celui-ci est fourni avec un serveur web simple et léger, mais pas très robuste.

Avant 0SX 10.8, option “web sharing” présente dans préférence système -&gt; partage. La checkbox permettait de démarrer/arrêter Apache.</description>
    </item>
</rdf:RDF>
