As it looks, the syntax is checking matching (){}[] etc, but not PHP functions syntax (eg, a mistake in writing $_PHP_SELF vs $_PPH_SEFL, or str_replace vs srt_rpleace). Unknown function or variable names are not a syntax error. You might as well have your own functions called srt_rpleace() or ...