Const behavior in PHP 7 I always thought const behavior to be like class. Well, of course, beside the obvious differences, const and class were compile-time structures. They are complete at compilation, and could be op-coded and cached. This is unlike the slower define() function (for const), which requires PHP execution to be creating constants. This […]
There is an upgraded Exakat version available. Since May, we’ve been working hard on a major upgrade of the exakat code base. After two years of growing and adding features, the initial architecture was showing signs of aging, that needed to be upgraded. For example, structures definitions, such as classes, functions, constants, etc. were kept […]
There are two moments in the life cycle of a project where you can apply a long known best practice : « write test first, then the code ». The first one is when you start writing the code, and you have some time. The second is when the current architecture of the software has reached its maximal […]
Static analysis helps migrate to PHP 7 Static analysis is the analyze of PHP code without running it. The traditional way to do this is to read the code and understand it. The modern way is to use a static analysis software. Including static analysis as a regular sanity check in your coding process raises […]
7 new PHP static analysis No less than 7 new analyzers for Exakat, since last week version. Here is a quick review, as they are both varied and interesting. Identical conditions Identical conditions spots members of an complex logical expression that are identical. When several conditions are chained, it happens that some of the conditions […]
PHP bug-fixes help your code Ever wondered which PHP bug-fixes help your code? What is the actual impact of a PHP minor version on your code ? Every month, or more, PHP provides a new version, covering about thirty bugs and various upgrades. Sometimes, features request make it to a version. Still, who has time to review […]
Confusing variable names Did you ever meet that awful situation, where you try to understand why the SQL query fails, until you realize that $res and $req are simply too confusing ? There are confusing variable names, notably those that are one letter close from each other. Problems ranges from $data and $date in the same […]
When testing the exakat static analysis engine, we need to run it on real code : even better, use the largest PHP code base available. Open Source projects are a real blessing there, since they come in different shapes and stripes. Some projects dates back from PHP 3 and evolved until now, some are directly […]
Find private properties in my PHP It is always good to use the lowest visibility possible for a class member, and only relax the constraint when it is really needed. This is probably a old adage, shared with other programming languages, and one that I’m trying to apply more and more. Public properties will act as […]
PHP 7 Static analysis tools With PHP 7 officially live, it it time to review code and get it ready for migration. It is now time to think about migrating code to the new version, taking advantage of new features et reduced server load. This means reviewing all the code : it may be too much […]