I am considering developping a new website in PHP using the ExtJS library from Sencha.
I thought that it would be great to have a wrapper in PHP which allows me to create the Javascript definitions of the ExtJS UI.
This way, I would be able to define the whole UI of my website using PHP which would be in my opinion pretty convenient.
So far, I have been looking at PHP-Ext which is an open source wrapper written a few years ago and not being maintained anymore. Hence, it is not adapted to ExtJS 4 (the latest version).
I would like to know if you know a better wrapper for ExtJS in PHP?
If there is none, I would be wondering if my idea is actually good... and I would like to know if someone thinks it doesn't make sense.
If there is none, I would be wondering if my idea is actually good... and I would like to know if someone thinks it doesn't make sense.
The key selling point of ExtJS is that it does so much on the client. The only thing I know of that's similar to what you're asking for is GWT for ExtJS. Even with Java, all of the developers I know who use ExtJS prefer to leave the Java code purely to supporting ExtJS like session management and REST services to power AJAX operations.
Ext JS has already simplified creation of a website. Creating a wrapper would probably not simplify it any further. Also with different version of Ext JS coming in you'll also need to change the wrappers to support the changes. Maintaining the wrapper would probably end up in being more of a headache than anything else. Probably that's why the PHP-Ext wrapper has lost support.
I would recommend you to NOT try to find a wrapper. In the end your code will get worse and you will have a bigger risk (things like debugging can become a mess so easily when code is compiled).
If you want to easily click your UI together, try Sencha Architect (a visual tool to create ExtJS code). For your backend use a framework with plays nicely with Sencha. I personally always use CakePHP and Bancha.
Sometimes too much abstraction is worse! Sencha already abstracts everything for you. I hope this helps :)