PHP 3 — Birth of the Language (Rasmus Lerdorf)
debt(d0/e0/b0/t3)
Axis does not apply. This is a pure historical/factual reference term with no code artifact, no misuse pattern, and no tooling surface. There is nothing to detect.
Axis does not apply. The quick_fix field explicitly states 'Historical context — no fix needed.' There is no code to patch, refactor, or rework.
Axis does not apply. This term describes a historical event (PHP 3's origins), not a code or architectural choice. It imposes no structural weight on any codebase.
Closest to 'minor surprise' (t3). The misconception field identifies a specific wrong belief — that Rasmus Lerdorf wrote the PHP that became popular, when in fact PHP 3 was a rewrite by Suraski and Gutmans. This is a single, well-bounded factual gotcha rather than a behavioural trap that causes bugs, so t3 (one edge case / minor surprise) is appropriate rather than a higher score.
TL;DR
Explanation
PHP started as 'Personal Home Page Tools' (PHP/FI) by Rasmus Lerdorf in 1994 — simple C scripts to track website visitors. PHP 3 (1997) was a complete rewrite by Zeev Suraski and Andi Gutmans (Tel Aviv University students), renaming it 'PHP: Hypertext Preprocessor'. Key additions: object support (basic), a more consistent function library, database abstraction, and the name change to PHP. The language was simple, procedural, and embedded directly in HTML. About 10% of all web servers ran PHP 3 at its peak. This rewrite established the open-source PHP we know today.
Common Misconception
Why It Matters
Common Mistakes
- Thinking PHP was designed as a serious language — it evolved organically from CGI scripts.
Code Examples
<!-- PHP 3 style — HTML with embedded code, no OOP, global functions -->
<?php
$result = mysql_query('SELECT * FROM users');
while ($row = mysql_fetch_array($result)) {
echo $row['name'] . '<br>';
}
// Modern PHP equivalent:
$users = $pdo->query('SELECT * FROM users')->fetchAll();
foreach ($users as $user) {
echo htmlspecialchars($user['name']) . PHP_EOL;
}