Difference between revisions of "PHP"

From Freephile Wiki
Jump to navigation Jump to search
(The rest of this is very old, but I wanted to add a couple decent links)
(add mod_php vs php-fpm)
Line 1: Line 1:
== Who wrote PHP?==
+
==Who wrote PHP?==
 
https://www.php.net/credits.php
 
https://www.php.net/credits.php
  
== How do you upgrade? ==
+
==How do you upgrade?==
 
See the [https://www.php.net/manual/en/ migrating appendices in the manual]
 
See the [https://www.php.net/manual/en/ migrating appendices in the manual]
  
== Resource Sites ==
+
== Mod PHP vs PHP-FPM ==
# Aidan Lister from Autstralia has a nice site online (source provided to make your own similar site) which lists many classes and PHP functions for doing routine things that you will inevitabably face in programming.  Things like making a directory structure recursively, or checking the size of a directory and it's contents.  http://aidanlister.com/
+
See the [https://www.zend.com/blog/apache-phpfpm-modphp#how-to-choose-between-mod-php-and-php-fpm article by Matthew Weier-O'Phinney on Zend.com]
# Jeroen (John) Post created http://onlinephpfunctions.com/ which lets you play with PHP code in the browser, and specifically test that code with multiple versions of PHP.
 
  
 +
==Resource Sites==
  
== Language Features ==
+
#Aidan Lister from Autstralia has a nice site online (source provided to make your own similar site) which lists many classes and PHP functions for doing routine things that you will inevitabably face in programming.  Things like making a directory structure recursively, or checking the size of a directory and it's contents.  http://aidanlister.com/
 +
#Jeroen (John) Post created http://onlinephpfunctions.com/ which lets you play with PHP code in the browser, and specifically test that code with multiple versions of PHP.
  
=== Magic Methods ===
 
* [https://github.com/guidovanbiemen/setngeti SetnGeti] - an implementation of Magic Methods for getting and setting based on traits and DocBlock comments.
 
* [https://cspray.github.io/2012/05/13/stop-calling-them-getters-setters Don't do it the wrong way]
 
  
=== JSON ===
+
==Language Features==
 +
 
 +
===Magic Methods===
 +
 
 +
*[https://github.com/guidovanbiemen/setngeti SetnGeti] - an implementation of Magic Methods for getting and setting based on traits and DocBlock comments.
 +
*[https://cspray.github.io/2012/05/13/stop-calling-them-getters-setters Don't do it the wrong way]
 +
 
 +
===JSON===
  
 
With <code>[https://php.net/manual/en/function.json-decode.php json_decode()]</code>, you either get an object, or using the optional second
 
With <code>[https://php.net/manual/en/function.json-decode.php json_decode()]</code>, you either get an object, or using the optional second
Line 31: Line 36:
  
  
== ToDo ==
+
==ToDo==
* implement the codesniffer locally https://github.com/wikimedia/mediawiki-tools-codesniffer
+
 
 +
*implement the codesniffer locally https://github.com/wikimedia/mediawiki-tools-codesniffer
  
 
[[Category:PHP]]
 
[[Category:PHP]]

Revision as of 08:02, 22 February 2024

Who wrote PHP?[edit | edit source]

https://www.php.net/credits.php

How do you upgrade?[edit | edit source]

See the migrating appendices in the manual

Mod PHP vs PHP-FPM[edit | edit source]

See the article by Matthew Weier-O'Phinney on Zend.com

Resource Sites[edit | edit source]

  1. Aidan Lister from Autstralia has a nice site online (source provided to make your own similar site) which lists many classes and PHP functions for doing routine things that you will inevitabably face in programming. Things like making a directory structure recursively, or checking the size of a directory and it's contents. http://aidanlister.com/
  2. Jeroen (John) Post created http://onlinephpfunctions.com/ which lets you play with PHP code in the browser, and specifically test that code with multiple versions of PHP.


Language Features[edit | edit source]

Magic Methods[edit | edit source]

JSON[edit | edit source]

With json_decode(), you either get an object, or using the optional second parameter, you can force the return value to an array. In the former case, you access the content using object notation. In the latter case, you use array notation. ie.

$data = json_decode($data);
$version = $data->query->general->generator;
    // or     
$data = json_decode($data, true);
$version = $data['query']['general']['generator'];


ToDo[edit | edit source]