PHP-EVAL-001
eval($code)
eval() in extensions
eval still runs. It is an RCE footgun. Joomla 6 migrations should remove it, not preserve it.
eval($code) → Never — forbidden for Infyways work
Symptoms people search
eval in plugin · custom php param
Replace this code
Swap eval($code) for Never — forbidden for Infyways work.
Joomla 3
Remove or stop calling this
eval($params->get('customphp'));Joomla 4 / 6
Use this instead
// Delete eval. If you need configurable logic, use a real PHP class, not stored strings.How to fix it
- 1Remove eval.
- 2Rewrite as proper code.
Also known as
eval(
There is no 1:1 swap for this one. The architecture changed. If you cannot rewrite it, Infyways can.
Related issues
- Joomla 3 → 4Joomla API
JError / JException
JError::raiseError() → throw new RuntimeException() / try-catch
- Joomla 3 → 4PHP
jimport() autoloader calls
jimport('joomla.filesystem.file') → use Joomla\CMS\Filesystem\File;
- Joomla 3 → 4PHP
DS path constant
DS → DIRECTORY_SEPARATOR or /
- Joomla 3 → 4PHP
JPATH_PLATFORM
JPATH_PLATFORM → Do not use — autoload instead
- Joomla 3 → 4PHP
mysql_* PHP functions
mysql_query() → Joomla DatabaseInterface / mysqli / PDO
- Joomla 3 → 4PHP
each() / create_function() / ereg / split
each($array) → foreach / closures / preg_*