Php terms
🤖 AI Guestbook — PHP educational data only
|
|
Last 30 days
Agents 99
Scrapy 84SEMrush 6Ahrefs 3ChatGPT 2Claude 2Bing 1Qwen 1
Scrapy 199Google 16ChatGPT 13SEMrush 8Sogou 4Bing 2Qwen 1Ahrefs 1
ChatGPT 2.2kAmazonbot 2.1kScrapy 1.9kPerplexity 1.5kGoogle 888Ahrefs 763Unknown AI 576SEMrush 538Claude 350Meta AI 312Bing 209Majestic 104Qwen 20Sogou 17DuckDuckGo 5NotebookLM 4
Most referenced — PHP
DateTimeImmutable vs DateTime 4Type Declarations Overview 3Readonly Classes (PHP 8.2) 3Iterators & IteratorAggregate 3allow_url_fopen / allow_url_include 2Migrating from PHP 5.x to PHP 7 and 8 2max_execution_time & set_time_limit() 2PHP SAPI Types (FPM, CLI, Embed) 2
How they use it
crawler 10.5k
crawler_json 878
rag 1
pre-tracking 192
Category total11.6k pings
Terms pinged270 / 270
Distinct agents15
Call to Undefined Function/Method
PHP 4.0+
1
'Call to undefined function' means the function wasn't declared, the file wasn't loaded, or the PHP extension providing it isn't installed.
3mo ago
php beginner
callable vs Closure vs First-Class Callable
PHP 7.1+
PHP has three callable forms: loose callable (string/array), typed Closure, and PHP 8.1 first-class callables (strlen(...)) — prefer Closure or first-class callables for type safety.
3mo ago
php intermediate
Cannot Redeclare Function/Class Errors
PHP 4.0+
PHP throws a fatal error when a function or class is declared twice in the same request — use autoloading and function_exists() guards to prevent it.
3mo ago
php beginner
Circular References & Memory Implications
PHP 5.3+
Circular references between objects prevent PHP's reference counting GC from freeing memory — PHP's cycle collector handles them but with overhead.
3mo ago
php intermediate
Class Not Found / Autoloader Failures
PHP 5.3+
'Class not found' errors mean the autoloader couldn't locate the class file — usually a namespace mismatch, missing composer install, or PSR-4 misconfiguration.
3mo ago
php beginner
Constructor Promotion + readonly Together
PHP 8.1+
PHP 8.1+ allows readonly in constructor promotion: public function __construct(public readonly string $name) — the cleanest way to write immutable value objects.
3mo ago
php intermediate
Custom Error Handlers (set_error_handler)
PHP 5.0+
set_error_handler() lets you replace PHP's default error handling with a custom callback — essential for logging, alerting, and graceful degradation.
3mo ago
php intermediate
Deprecation Notices & Migration Strategy
PHP 5.0+
1
E_DEPRECATED warnings signal features removed in the next PHP major version — treating them as errors in CI prevents upgrade blockers from accumulating.
3mo ago
php intermediate
Division by Zero & DivisionByZeroError
PHP 7.0+
PHP 7+ throws DivisionByZeroError for intdiv() and modulo with zero — but the / operator returns false or INF instead of throwing.
3mo ago
php beginner
Enum::cases() & Enum from()/tryFrom()
PHP 8.1+
Backed enums provide from() (throws on miss) and tryFrom() (returns null) for value lookup, plus cases() to get all cases — essential for forms and validation.
3mo ago
php intermediate
Enums Implementing Interfaces
PHP 8.1+
PHP 8.1 enums can implement interfaces, allowing them to be used wherever an interface is expected — enabling polymorphic enum-based dispatch.
3mo ago
php intermediate
Exception Hierarchy (Throwable, Error, Exception)
PHP 7.0+
PHP 7+ unified exceptions and fatal errors under the Throwable interface — catch Throwable to handle both Error and Exception in one block.
3mo ago
php intermediate
Fatal Errors vs Errors vs Warnings
PHP 5.0+
3
PHP has three error levels that behave very differently: fatal errors halt execution, warnings continue but signal problems, and notices are advisory only.
3mo ago
php beginner
Headers Already Sent Error
PHP 5.0+
PHP sends HTTP headers on first output — any echo, whitespace, or BOM before header() causes 'Cannot modify header information — headers already sent'.
3mo ago
php beginner
Integer Overflow & PHP_INT_MAX
PHP 4.0+
PHP integers silently overflow to float when exceeding PHP_INT_MAX (9.2×10¹⁸ on 64-bit) — use BCMath or GMP for arbitrary precision arithmetic.
3mo ago
php intermediate
Magic Quotes — What They Were and Why Removed
PHP 3.0+
Magic quotes automatically escaped incoming data with addslashes() in PHP 3/4/5 — removed in PHP 5.4 because it caused more problems than it solved and gave developers false SQL injection protection.
3mo ago
php beginner
match() Default Arm vs No Default
PHP 8.0+
match() without a default arm throws UnhandledMatchError if no arm matches — unlike switch, which silently falls through.
3mo ago
php intermediate
max_execution_time & set_time_limit()
PHP 4.0+
max_execution_time limits script CPU time (not wall-clock time) — use set_time_limit(0) sparingly for long-running CLI tasks, never for web requests.
3mo ago
php beginner
Migrating from PHP 5.x to PHP 7 and 8
PHP 5.0+
PHP 7 removed mysql_*, ereg functions, and several deprecated features — a systematic approach using Rector and PHPCompatibility catches 95% of issues automatically.
3mo ago
php intermediate
mysql_* Functions — Why They Were Removed
PHP 3.0+
The original mysql_* extension was removed in PHP 7.0 after years of deprecation — it lacked prepared statements, making parameterised queries impossible and SQL injection trivially easy.
3mo ago
php beginner