Weird operators in PHP If you read the PHP documentation, you will learn about a ton of operators. If you haven’t learnt about PHP operators, go do that first, we’ll wait for you. Operators are usually made up with strange symbols, like !, -, =>, <=>, ^ or ~. Really, some are plain readable like […]
Exakat 1.2.6 review Exakat 1.2.6 got its review! This is all about the schizophrenic arrayunique() situation, since we have both ‘Avoid arrayunique()’ and ‘shoul use array_unique()’ in the same engine! Also, we added zookeeper. It’s the short Exakat 1.2.6 review. array_unique() situation Arrayunique() has been the target of an analysis until PHP 7.2, as it […]
Exakat 1.2.4 review Exakat 1.2.4 features a special report ‘Confusing variables’, that help readability by reducing the number of look-alike among variables. Several bugs were also hunted and get rid of. In the same time, we have some more recommendations about memory usage. It is a bright cold day in April, and the versions are […]
< Exakat 1.2.3 review Exakat 1.2.3 is steadily bringing more analysis and reports to PHP coders. This week, we are excited to see the start of the new ‘Manual’ report, and three new analysis, that checks strtr() usage, reports property unsetting and list all complex expressions. So, “call me Exakat”: here is the Exakat 1.2.1 […]
Largest PHP applications When testing the exakat static analysis engine, I need to run it on real code. Open Source projects are a real blessing there, since they come in different shapes and stripes. Some projects dates back from PHP 3 and have evolved until now, some are PHP 7.2 only ; some are full OOP, […]
Exakat 1.1.7 review Exakat 1.1.7 and 1.1.6 are reviewed together this week. Two new reports are introduced : Stats and Fitting PHP version. Several new analysis are added : suggestion to use arrayfillkeys(), 4 new PHP extensions, and a TOCTOU classic problem. It is time to walk the Exakat 1.1.7 review. New Stats and Fitting PHP […]
Exakat 1.1.1 review With the new year 2018, we though it was time to dive into a significant upgrade, and so we did. We changed the internal storage of tokens from strings to dictionary: that means less memory consumption, less token manipulations et more speed. It also shifts complexity from one part of the application […]
PHP assertions and their usage PHP has a clever native debugging tool : the PHP assertions. In a nutshell, assertions are a functioncall to assert(), that triggers an error when a condition is not satisfied. <?php $a = 1; assert($a === 1, ‘$a is not 1’); assert($a === 2, ‘$a is not 1’); ?> Unlike debugging […]
Exakat 1.0.11 review Happy new year 2018 to you all, code reviewers. The final versions for Exakat in 2017 were small upgrades: we took advantage of the end of the year to remove some bugs, and fix some long waiting tasks. So, in the end, it is the most stable version of Exakat that starts […]
PHP Advent calendar With PHP 7.2 out of the oven, literally yesterday, and the final month of the year starting, it is time for a PHP advent calendar. Every day until the 25th of December, we’ll reveal a new smelly treat. Yes, smelly treat, like a code smell. Common anti-patterns in PHP code leads to […]