Terms starting with "P"
PHP 3 — Birth of the Language (Rasmus Lerdorf) PHP 3.0+
PHP 3 (1997) was the first version called 'PHP' — a complete rewrite by Zeev Suraski and Andi Gutmans that transformed Rasmus Lerdorf's Personal Home Page tools into a proper language.
2mo ago
php beginner
PHP 4 Objects Passed by Value (Pre-5 Gotcha) PHP 4.0+
PHP 4 copied objects on assignment — $b = $a created a full clone. PHP 5+ passes object handles by value (reference semantics). This was the biggest PHP 4 pain point.
2mo ago
php intermediate
PHP 4 — Zend Engine 1, Classes Without OOP PHP 4.0+
PHP 4 (2000) introduced the Zend Engine 1.0 — dramatically improving performance and adding basic classes, though objects were passed by value and OOP was rudimentary.
2mo ago
php beginner
PHP 6 — The Version That Never Shipped
PHP 6 was a major development effort (2005–2010) that aimed to bring native Unicode support to PHP but was abandoned due to complexity and performance problems — its features were later cherry-picked into PHP 5.3 and 5.4.
2mo ago
php beginner
PHP 8 — Key Features PHP 8.0+
PHP 8.0–8.4 introduced match expressions, named arguments, union types, nullsafe operator, fibers, enums, readonly properties, first-class callables, and a JIT compiler — the most significant evolution of the language since PHP 5.
2mo ago
php intermediate
PHP 8.5 — What's Coming PHP 8.5+
PHP 8.5 is in active development (expected late 2025). Confirmed additions include pipe operator |>, first-class callable improvements, and several standard library additions. The release follows PHP's annual November release cycle.
2mo ago
php beginner
PHP CSV Handling (fgetcsv / str_getcsv) PHP 5.3+
PHP provides fgetcsv() for reading CSV line-by-line from a file handle and str_getcsv() for parsing a CSV string — both handle quoted fields, embedded commas, and escaped characters correctly where explode() does not.
2mo ago
php beginner
PHP Execution Model — Shared-Nothing Architecture PHP 5.0+
Each PHP request runs in a completely isolated process or thread — no memory, globals, or state is shared between requests. Every request bootstraps the entire application from scratch and discards everything when it ends.
2mo ago
php intermediate
PHP Garbage Collection Internals (Cycle Collector) PHP 5.3+
PHP uses reference counting as its primary memory management strategy — when a value's reference count drops to zero it is freed immediately. A secondary cycle collector handles circular references that reference counting alone cannot free.
2mo ago
php advanced
PHP Mail & SMTP PHP 4.0+
Sending email from PHP using mail(), SMTP libraries like PHPMailer or Symfony Mailer, or transactional email APIs — with critical configuration for deliverability, security, and reliability.
2mo ago
php beginner
PHP Memory Model — Zval & Copy-on-Write PHP 7.0+
PHP stores every value in a zval (Zend value) container that holds the type, value, and a reference count. Arrays and strings are copied lazily — the copy only happens when one copy is modified (copy-on-write), making passing large values cheap until mutation.
2mo ago
php advanced
PHP SAPI Types (FPM, CLI, Embed) PHP 4.0+
SAPI (Server API) defines how PHP is invoked — php-fpm for web requests, php-cli for commands, embed for C extensions — each has different lifecycle and configuration.
2mo ago
php intermediate
PHP Sessions PHP 4.0+
Server-side state storage identified by a cookie-based session ID — PHP's built-in mechanism for persisting data across HTTP requests, with security implications for how the session is started, stored, and terminated.
2mo ago
php beginner
PHP Sodium Extension (Libsodium) PHP 7.2+
The Sodium extension (bundled since PHP 7.2) provides modern, misuse-resistant cryptography via the libsodium C library — covering authenticated encryption, key exchange, password hashing with Argon2, and digital signatures with a simple, safe API.
2mo ago
php advanced
PHP Version Upgrade Checklist PHP 5.0+
A systematic PHP upgrade process: check EOL status, run static analysis, update Composer deps, run Rector, test on new version in staging, then deploy — never upgrade directly in production.
2mo ago
php intermediate
PHP/FI — The Origin Story (1994–1997)
PHP began in 1994 as Personal Home Page Tools — a set of Perl scripts Rasmus Lerdorf wrote to track visits to his online résumé. By 1995 it was rewritten in C, and PHP/FI (Forms Interpreter) 2.0 shipped in 1997 as the first publicly released version.
2mo ago
php beginner
Pluralisation Rules PHP 7.0+
Language-specific rules governing how word forms change based on quantity — English has two forms (1 item / 2 items), but many languages have three, four, or six distinct plural forms requiring different translations.
2mo ago
i18n intermediate
Producer-Consumer Pattern
Producer-Consumer decouples work generation from processing — producers add to a queue, consumers process independently, buffering load spikes and enabling parallel throughput.
2mo ago
concurrency intermediate
Progressive Web App (PWA)
A web application that uses modern browser APIs to deliver app-like experiences — installable on the home screen, working offline, and receiving push notifications — without requiring an app store.
2mo ago
mobile intermediate
Prometheus Concepts
Prometheus is a pull-based metrics system — services expose /metrics in text format, Prometheus scrapes them, stores as time series, and evaluates alerting rules via PromQL.
2mo ago
observability intermediate