Inline Temp Variable Refactoring
TL;DR
Inline Temp removes a temporary variable used only once when its name adds no clarity — replacing the variable reference with its expression directly.
Explanation
A temporary variable assigned once and used once can often be inlined if the expression is already self-explanatory. Especially common in boolean checks: $isEligible = $user->age >= 18; return $isEligible; → return $user->age >= 18; But: keep the temp if it (1) clarifies a complex expression with a meaningful name, (2) is used more than once, (3) makes a slow operation happen once. Inline Temp is the inverse of Extract Variable. It reduces line count but should only be done when clarity is preserved or improved.
Common Misconception
✗ Inlining temp variables always improves code — only inline when the expression is already clear. Complex expressions benefit from a descriptive variable name.
Why It Matters
Unnecessary temp variables add cognitive overhead — each variable requires tracking. Removing them simplifies control flow.
Common Mistakes
- Inlining complex expressions that need a name to be understandable.
- Inlining variables used in multiple places — creates duplication.
- Not inlining obvious single-use variables that add no information.
Code Examples
✗ Vulnerable
$result = calculateTotal($items);
return $result; // $result adds nothing
✓ Fixed
return calculateTotal($items); // Direct, no noise
// But KEEP the temp when it adds meaning:
$isEligibleForDiscount = $user->isPremium() && $order->total > 100;
return $isEligibleForDiscount; // Name clarifies the condition
References
Tags
🤝 Adopt this term
£79/year · your link shown here
Added
23 Mar 2026
Views
18
🤖 AI Guestbook educational data only
|
|
Last 30 days
Agents 0
No pings yet today
No pings yesterday
Amazonbot 6
Unknown AI 4
Perplexity 3
ChatGPT 1
Majestic 1
Google 1
Ahrefs 1
How they use it
crawler 15
pre-tracking 2
Related categories
⚡
DEV INTEL
Tools & Severity
🔵 Info
⚙ Fix effort: Low
⚡ Quick Fix
Remove temp variables used exactly once when the expression is self-explanatory. Keep temps that name complex conditions or prevent duplicate computation.
📦 Applies To
web
cli
queue-worker
🔗 Prerequisites
🔍 Detection Hints
\$[a-z]+ = .*;
.*return \$[a-z]+;
Auto-detectable:
✓ Yes
rector
phpcs
🤖 AI Agent
Confidence: Medium
False Positives: Medium
✓ Auto-fixable
Fix: Low
Context: Function