internals:references

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
internals:references [2012/03/20 18:44] – Add more refs sixdinternals:references [2014/01/24 23:12] – Add link to review comments sixd
Line 1: Line 1:
-====== External References about Maintaining and Extending PHP ====== +====== References about Maintaining and Extending PHP ======
- +
-**Books** +
- +
-  * [[http://www.amazon.com/Extending-Embedding-PHP-Sara-Golemon/dp/067232704X|Extending and Embedding PHP]] Sara Golemon's book on PHP (2006) +
-  * [[http://www.amazon.com/Advanced-PHP-Programming-George-Schlossnagle/dp/0672325616|Advanced PHP Programming]] George Schlossnagle's book has several relevant chapters (2004)+
  
 **Blog Posts and Articles** **Blog Posts and Articles**
 +  * [[review_comments|Common comments from reviewing PECL proposals]] 
 +  * [[http://nikic.github.io/2012/07/27/How-to-add-new-syntactic-features-to-PHP.html|How to add new (syntactic) features to PHP]] Nikita Popov (2012) 
 +  * [[http://arr.gr/blog/2012/06/on-php-extensions/|Blog post on what a PHP Extension is]] Shahar Evron (2012)
   * Blog Series on Internals by Anthony Ferrara & Nikita Popov (2012)   * Blog Series on Internals by Anthony Ferrara & Nikita Popov (2012)
     * [[http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers.html|PHP's Source Code For PHP Developers - Part 1 - The Structure]]     * [[http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers.html|PHP's Source Code For PHP Developers - Part 1 - The Structure]]
-    * [[http://nikic.github.com/2012/03/16/Understanding-PHPs-internal-function-definitions.html|Understanding PHP's internal function definitions (PHP's Source Code for PHP Developers - Part 2) ]]+    * [[http://nikic.github.com/2012/03/16/Understanding-PHPs-internal-function-definitions.html|Understanding PHP's internal function definitions (PHP's Source Code for PHP Developers - Part 2)]] 
 +    * [[http://blog.ircmaxell.com/2012/03/phps-source-code-for-php-developers_21.html|PHP's Source Code For PHP Developers - Part 3 - Variables]] 
 +    * [[http://nikic.github.com/2012/03/28/Understanding-PHPs-internal-array-implementation.html|Understanding PHP's internal array implementation (PHP's Source Code for PHP Developers - Part 4) ]]
   * [[https://github.com/mytskine/php-src/wiki/bug40531-mbsubstr|Fixing a bug in php-src]] François Gannaz describes making his very first bug fix (2012)   * [[https://github.com/mytskine/php-src/wiki/bug40531-mbsubstr|Fixing a bug in php-src]] François Gannaz describes making his very first bug fix (2012)
-  * Series by Kristina Chodorow (2011)+  * PHP Extensions Made Eldrich Series by Kristina Chodorow (2011)
     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-installing-php/|PHP Extensions Made Eldrich: Installing PHP]]     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-installing-php/|PHP Extensions Made Eldrich: Installing PHP]]
     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-hello-world/|PHP Extensions Made Eldrich: Hello, World!]]     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-hello-world/|PHP Extensions Made Eldrich: Hello, World!]]
     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-php-variables/|PHP Extensions Made Eldrich: PHP Variables]]     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-php-variables/|PHP Extensions Made Eldrich: PHP Variables]]
     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-classes/|PHP Extensions Made Eldrich: Classes]]     * [[http://www.snailinaturtleneck.com/blog/2011/08/11/php-extensions-made-eldrich-classes/|PHP Extensions Made Eldrich: Classes]]
 +  * Internals articles by Julien Pauli (2011/2012 - french)
 +    * [[http://julien-pauli.developpez.com/tutoriels/php/sapis/|PHP's SAPI explained]]
 +    * [[http://julien-pauli.developpez.com/tutoriels/php/internals/zend-memory-manager/|PHP Memory and Zend Memory Manager]]
 +    * [[http://julien-pauli.developpez.com/tutoriels/php/internals/variables/|PHP's variables from internal]]
 +    * [[http://julien-pauli.developpez.com/tutoriels/php/internals/bases-creer-extension/|Introduction to PHP extensions writing]]
 +    * [[http://julien-pauli.developpez.com/tutoriels/php/internals/presentation/|Quick overview of PHP Engine]]
 +    * [[http://julien-pauli.developpez.com/tutoriels/php/internals/hashtables/|Hashtables explained]]
 +  * [[http://derickrethans.nl/valgrinding-shared-modules.html|Valgrinding shared modules]] Derick Rethans (2011)
 +  * [[http://derickrethans.nl/debugging-variables.html|Debugging Variables]] Derick Rethans (2011)
 +  * [[http://derickrethans.nl/phps-segmentation-faults-gdbfu.html|PHP's segmentation faults GDB-fu]] Derick Rethans (2011)
   * [[http://schlueters.de/blog/archives/141-References-and-foreach.html|References and foreach]] Blog post by Johannes Schlüter (2010)   * [[http://schlueters.de/blog/archives/141-References-and-foreach.html|References and foreach]] Blog post by Johannes Schlüter (2010)
   * [[http://devzone.zend.com/1435/wrapping-c-classes-in-a-php-extension/|Wrapping C++ Classes in a PHP Extension]] Zend DevZone article (2009)   * [[http://devzone.zend.com/1435/wrapping-c-classes-in-a-php-extension/|Wrapping C++ Classes in a PHP Extension]] Zend DevZone article (2009)
 +  * [[http://blog.golemon.com/2008/01/understanding-opcodes.html|Understanding Opcodes]] Blog post by Sara Golemon (2008)
 +  * [[http://blog.golemon.com/2007/01/youre-being-lied-to.html|You're being lied to]] Blog post on references by Sara Golemon (2007)
 +  * [[http://blog.golemon.com/2006/06/what-heck-is-tsrmlscc-anyway.html|What the heck is TSRMLS_CC, anyway?]] Blog post by Sara Golemon (2006)
 +  * [[http://blog.golemon.com/2006/05/last-month-at-phptek-i-gave.html|Compiled Variables]] Blog post by Sara Golemon (2006)
   * Zend DevZone Series by Sara Golemon (2005, 2006)   * Zend DevZone Series by Sara Golemon (2005, 2006)
     * [[http://devzone.zend.com/303/extension-writing-part-i-introduction-to-php-and-zend/|Extension Writing Part I: Introduction to PHP and Zend]]     * [[http://devzone.zend.com/303/extension-writing-part-i-introduction-to-php-and-zend/|Extension Writing Part I: Introduction to PHP and Zend]]
Line 24: Line 37:
     * [[http://devzone.zend.com/318/extension-writing-part-ii-parameters-arrays-and-zvals-continued/|Extension Writing Part II: Parameters, Arrays, and ZVALs (continued)]]     * [[http://devzone.zend.com/318/extension-writing-part-ii-parameters-arrays-and-zvals-continued/|Extension Writing Part II: Parameters, Arrays, and ZVALs (continued)]]
     * [[http://devzone.zend.com/446/extension-writing-part-iii-resources/|Extension Writing Part III: Resources]]     * [[http://devzone.zend.com/446/extension-writing-part-iii-resources/|Extension Writing Part III: Resources]]
 +
 +**Conference Videos**
 +
 +  * [[http://www.youtube.com/watch?v=bxxIXPc9IR8|PHP UK Conference 2012 - PHP under the hood]] Johannes Schlüter at PHP UK Conference 2012 (London, UK) (2012)
 +
 **Conference Slides** **Conference Slides**
  
-  * [[http://talks.somabo.de/200903_montreal_php_extension_writing.pdf|PHP Extension Writing]] Conference slides by Johannes Schlüter and Marcus Börger (2009) +  * [[http://blog.ircmaxell.com/2013/06/php-under-hood-slides.html|PHP, Under The Hood]] by Anthony Ferrara (2013) 
-  * [[http://www.php.net/~wez/extending-php.pdf|Extending PHP]] Conference slides by Wez Furlong (2003)+  * [[http://talks.somabo.de/200903_montreal_php_extension_writing.pdf|PHP Extension Writing]] by Johannes Schlüter and Marcus Börger (2009) 
 +  * [[http://www.php.net/~wez/extending-php.pdf|Extending PHP]] by Wez Furlong (2003
 + 
 +**Worked Examples** 
 +  * [[https://github.com/patrickallaert/PHP_Extension_Workshop/branches|PHP Extension Workshop]] by Patrick Allaert. Click on one of the "compare" buttons.  Every branches correspond to a specific addition to an empty extension. 
 + 
 +**Official Documentation/Source** 
 + 
 +  * Various README files within the [[http://git.php.net/?p=php-src.git;a=tree|php-src]] like: 
 +    * [[http://git.php.net/?p=php-src.git;a=blob_plain;f=README.PARAMETER_PARSING_API;hb=HEAD|README.PARAMETER_PARSING_API]] 
 +    * [[http://git.php.net/?p=php-src.git;a=blob;f=README.UNIX-BUILD-SYSTEM|README.UNIX-BUILD-SYSTEM]] 
 +    * [[http://git.php.net/?p=php-src.git;a=blob;f=README.STREAMS|README.STREAMS]] 
 +  * [[http://php.net/internals2|http://php.net/internals2]] 
 +  * [[https://wiki.php.net/doc/howto/pecldocs|HOWTO create documentation for a PECL extension]] 
 +  * [[:internals]] documentation within this wiki 
 + 
 +**Books** 
 + 
 +  * [[http://www.phpinternalsbook.com/|PHP Internals Book]] Online book by Julien Pauli, Anthony Ferrara, Nikita Popov (2013, work in progress) 
 +  * [[http://www.amazon.com/Extending-Embedding-PHP-Sara-Golemon/dp/067232704X|Extending and Embedding PHP]] Sara Golemon's book on PHP (2006) 
 +  * [[http://www.amazon.com/Advanced-PHP-Programming-George-Schlossnagle/dp/0672325616|Advanced PHP Programming]] George Schlossnagle's book has several relevant chapters (2004)
internals/references.txt · Last modified: 2017/09/22 13:28 by 127.0.0.1