php Threads and PHP Introduction PHP and threads. Just this 3-word sentence, and we could write a book. As usual, we won't, but give informations and details to some degree about the subject Let's start by some confusion many people fall in when it comes to such a
php PHP 7 magic function call trampoline Introduction This article will detail an optimization that's been added to PHP 7 virtual machine executor (Zend VM). We'll get back a minute into theorical concepts about function call trampolines, then we'll detail how those work into PHP 7. It is better - if
php PHP 7 Arrays : HashTables Introduction HashTables are used everywhere, in every C strong program. Basically, they allow the programmer to store values into an "array" by indexing this latter using strings, whereas the C language only allow integers as C-array keys. A hashtable structure is then
php PHP 7 objects Introduction Here is my first 2016 post, and as well my first PHP 7 targeted post. I guess 2016 will be full of PHP 7 posts, and empty of PHP 5 posts. Clearly, today, PHP 7 is stable, production ready, released, a lot of
php Huge Page usage in PHP 7 Recall on memory paging Memory paging is a way Operating Systems manage userland process memory. Each process memory access is virtual, and the OS together with the hardware MMU must translate that address into a physical address used to access the data in main
php PHP strings management Introduction Strings management has always been a "problem" to consider when designing a C program. If you think about a tiny self-contained C program, just don't bother with strings, use libc functions, or if you need to support Unicode, use libraries such
php PHP Closures History Back in 2009, when PHP 5.3 got released, a new feature (among many others) were introduced : anonymous functions (also called lambdas or closures). The feature was very expected, as closures have proved their utility through several other languages, particularly javascript that web
php Exceptional PHP (PHP 5) PHP Exceptions in short Back in 2004, PHP 5 came out with a new model object. This latter allows PHP users to make use of a well known OO paradigm : Exceptions. The Exceptions model has then not been really reworked. PHP 5.3 introduced
php Zoom on PHP objects and classes (PHP 5) PHP objects introduction Everybody uses objects nowadays. Something that was not that easy to bet on when PHP 5 got released 10 years ago (2005). I still remember this day, I wasn't involved in internals code yet, so I didn't know much things about
php PHP's OPCache extension review Reminder on OPCodes caches PHP is a scripting language, that by default will compile any file you ask it to run, obtain OPCodes from compilation, run them, and trash them away immediately. PHP has been designed like that : it "forgets" everything it's
php Getting into the Zend Execution engine (PHP 5) PHP : an interpreted language PHP is often defined as a "scripting language" or an "interpreted language". What's that ? Well, it is a language that won't turn its instructions (its syntax) directly into native machine language, but into an intermediate form,
php On PHP function calls (PHP 5) Introducting the facts This blog post is a technical explanation of a PHP optimization found with Blackfire profiler into a PHP script. The related post is located here : http://blog.blackfire.io/owncloud.html Basically, it concludes with : if (strlen($name) > 49) { ... } Beeing
php PHP output buffer in deep Dec 19th, 2014 First words Everybody is aware of the "output buffering" layer in PHP. This blog post is about how it works, how it's been implemented in PHP source code, and how to interact with it from PHP. This layer is not complex, but
php PHP and MySQL communication : mysqlnd Introduction Appeared with PHP 5.3, mysqlnd is an unknown part of PHP. Yet, this extension is a must-have if your system relies heavily on the MySQL database server. We'll see what mysqlnd is, what it brings to PHP and how to use it.
php PHP memory and Zend Memory Manager (PHP 5) Introduction This blog post is gonna introduce you the dynamic memory management layer PHP relies on : Zend Memory Manager (ZendMM). We'll detail why we need such a layer, what it does, how to customize it, how to interact with it from PHP land. Recall
php PHP's Realpath Cache Introduction Do you know those PHP functions, realpath_cache_get(), realpath_cache_size() ? php.ini setting realpath_cache ? Realpath cache is a really important concept to know about, especially when it comes to play with symbolic links, a situation some meet when they deploy
php Reference mismatch in PHP function calls A recall on references Once again, a coworker just pinged me about a huge memory usage in a Symfony based project. What is bad about Symfony ecosystem, is that people tend to use everyone else's code, because it seems to fit the usage need.