Are there stable well tested SDKs (as opposed to simple language converters) that allow you to develop your application in some decent language (I believe it is widely accepted that PHP is not a well designed platform) and then give PHP code as an output, so you can host your application on a server that only accepts PHP as a server-side scripting language?
closed as off-topic by gnat, World Engineer Sep 20 '14 at 17:17
This question appears to be off-topic. The users who voted to close gave this specific reason:
- "Questions asking us to recommend a tool, library or favorite off-site resource are off-topic for Programmers as they tend to attract opinionated answers and spam. Instead, describe the problem and what has been done so far to solve it." – gnat, World Engineer
If you hate PHP so much, you should avoid developing web applications to be hosted on PHP servers. Even if there would be any SDKs (and I don't know any), you would still need to to spend a great amount of time reading PHP—for example when debugging the application.
The same applies for language translators or supersets. A few years ago, I was working on a superset like that: a sort of PHP, but strongly typed when needed and with a set of features I liked in other languages, such as C#'s Code contracts (which cannot be implemented as-is in PHP). The only problem was that I still had to use PHP while debugging or profiling the apps.
I may suggest you the following:
If you're doing a project for a customer who told you that he has only PHP-based hosting, discuss it with your customer. Tell that that you don't consider PHP as a great programming language. Tell that he has a choice between considering another hosting platform, or search for another person to develop the application for him.
If you're working on a product for sale which would be hosted on multiple platforms, consider either not supporting PHP (which could be a problem, given the number of inexpensive hosting providers which have PHP only) or hiring a team of skillful PHP developers to add the support.
Another important thing is that you should consider using a PHP framework (if you're not yet using one). Many popular PHP frameworks reduce the discomfort of PHP inconsistencies and abstract some of the weird parts of the language.
While I haven't tried it myself, Laravel seems promising.