public static function addDollarIfNeeded($call)
{
if ($call === 'Inf') {
throw new \InvalidArgumentException($call . ' cannot be read from PHP', 16);
}
if ($call === 'undefined') {
return 'null';
}
$firstChar = substr($call, 0, 1);
if (!in_array($firstChar, array('$', '\\')) && !preg_match('#^(?:' . CompilerConfig::VARNAME . '\\s*\\(|(?:null|false|true)(?![a-z]))#i', $call) && preg_match('#^(_*' . CompilerConfig::VARNAME . ')(?!\\()#', $call)) {
$call = '$' . $call;
}
return $call;
}