Pular para o conteúdo principal

Postagens

Mostrando postagens com o rótulo php

Article: Optimizing PHP: Performance Tuning and Beyond

In today’s fast-paced digital landscape, every millisecond counts. For intermediate to advanced PHP developers, optimizing performance is not just an optional enhancement, it’s a necessity. Whether you’re running large-scale applications or fine-tuning high-traffic websites, understanding and implementing sophisticated performance strategies can set your projects apart. In this post, we’ll explore some base concepts that are necessary to improve PHP applications such as benchmarking, caching, debugging memory leaks, and even dive into experimental methods that push the boundaries of what PHP can do. I will try to present them with the code as simplest as possible to enable everybody to understand how simple is the actual concept but I urge you to search for a more updated and viable ways (according to your situation) to do that what is presented here. 1. Benchmarking and Profiling: Knowing Your Performance Baseline There is an old saying that goes "you can't control what you d...

General: Prevent arbitrary precision arithmetic

Demand Some simple decimal calculations like 4.6 * 100 may lead in irregularities when dealing with numbers. Description During arithmetic operations like addition, subtraction, multiplication, and division, the numbers are manipulated according to the rules defined by the IEEE 754 standard. However, due to the finite precision of the representation, rounding errors may occur, leading to small discrepancies between the expected and actual results of computations. In simpler terms, the computer operates using powers of 2 (binary-based), so whenever we need to work with a number that cannot be exactly represented in binary (like 0.1, which is a base-10 fraction), it uses an approximation rather than an infinite number and is incapable of presenting the exact correct value. To prevent it we may use some libraries to prevent the problem. In Javascript and Typescript we have the BigNumbers library (and others). PHP has a built-in library for arbitrary-precision arithmetic called BCMath (Bin...

PHP: Always use an index to add a values to an array

  Demand Always identify the array index when manipulating the array directly Description Whenever you are adding a new item to the array you must add an index so that php does not need to recalculate the size of the array to identify in which position the new content will be added. Examples 1: # Bad code: 2: do { 3: $array[] = $newItem; 4: } while(!feof($fp)); 5: 6: # Good code 7: $array = []; 8: $index = 0; 9: do { 10: $array[$index++] = $newItem; 11: } while(!feof($fp)); Examples Explanation When instantiating a new item in an array in the "bad example" php will identify that you expect the item to be added to the end of the array, since array is a primitive type and has no attributes php always needs to call a calculation function to identify the current size of the array before trying to add a new item to the end of it. By monitoring the growth of the array in an external variable and automatically reference which position will...