The reason that people complain about PHP as a language is that it was not developed from scratch as a "programming language" per-se, but rather evolved from a small webpage project ("Personal Home Page") into a programming language.
The result is something that is very practical, but which is full of many design decisions that make no sense at all. Basically, it is the way that it is (in many cases) because of some historical development, rather than outright design. Nevertheless, from a practical standpoint, none of that matters very much.
You can find a long, but also outdated list of common complaints in the popular post "PHP a Fractal of Bad Design".
One very valid complaint, though, is that dynamic typing isn't suitable for large scale projects. For a small project, like a "personal home page," dynamic typing is a great advantage. It saves writing a lot of useless boilerplate code and type declarations that have no advantages for a small application, but when there are hundreds and thousands of classes and functions, static typing is a continual helper in fixing bugs and documenting code.
Besides personal websites and "small applications," PHP is often used for prototyping large applications quickly. Once the application is successful, though, they are stuck with the code they wrote in PHP. Some of them rewrite it, but most cannot to loose a year of development to the choice of a programming language. The Runtime Converter solves this problem by translating their application in a working state to a new language (such as Java, Swift or C#) in a matter of hours, not months. They can continue developing now and do it in Java, Swift, or C#.