Eh, I've worked in PHP for more than a decade professionally and I still need to double check the argument order for array_walk. The syntax of how we express ideas abstractly is probably a better thing to focus on than any specific details tied to the language.
Sort of? It depends on the language but a lot of times syntax is just a fancy sugared way to invoke weird functions - i.e. `if (a === b)` might just be `if (a.equals(b))`. I work building tools to make other people more productive so a lot of the time I'll build out functionality I'm implementing using sugared syntax to make it cleaner. In some languages this isn't possible but most modern languages allow metaprogramming of some form or another.