PHP Method Call via URL

February 15, 2007

We are developing a Flex Application with PHP as a middleware. Flex Httpservice component we are using to communicate with the PHP. We have several developers who are doing separate modules. They doing both Flex as well as PHP code. I thought its not proper and need to have a solution where our code will reside on the single url.

How we achieve this?

I thought of developing a architecture which will take a className and methodName from URL and call methods and the supplied object dynamically.

eg. http://localhost/PHP/Flex/index.php?className=MyClass&methodName=getUser

This above url calls getUser method on MyClass Object. I used call_user_method function of PHP which allows me to achieve this.

One trick for this part is also instantiating the object dynamically. I coded like this

function getObject($class)
{
static $instance ;

if(!isset($instance))
{
$instance =& new $class;
}

return $instance;
}

getObject method accepts className and checks wheather that object exists or not. If object is not set then it creates a object and just return it.

It was a great experience while building something which allows my developers to simplify their code integration. Now every developers is working on their respective classes and using this method.

Cheers 🙂

Advertisements

Framework with more features and real usage

February 12, 2007

Months ago when I heard of the term framework which generate Add/Mod/Del functionality, I was quite surprise and realize that how helpful it could be. It will save a lot of hours I spend on the most part, increase efficiency and will be bug free :). After trying with some framework, I found it does the right job but not with style I write the code. Its interanal are too difficult to understand and modifying such code eats up more time than I ever expected. I thought Its better idea to go the way I/we code. Later after thinking for some time on the right concept, its clear many thing and I realizes building framework is not a tough job. In my earlier post I already talked about when I started with it. This time I develop more better version of code.

I used pear DB class for database and Smarty for templating as most of the PHP developers are using it.

What features my frameworks offer this time?

-Generate Class file based on the table Structure.
-Generate Templates for AddUpdate as well as for Listing the records.
-Sorting on the each column field.
-Pagination.
-Server Validation for Unique values.
-Javascript validation for Blank Values currently.
-Generate JS map which we can use for further validation.
-Complete Add/Modify/Delete.
-Debug options which allow development message enable disable.
-Generate Links based on the class available.
-Search on the table field

New Features I will be adding this month
-Basic Ajax Functionality

Framework is flexible enough to add new functinality in code. Even this framework has ability to generate Coldfusion, ASP as well as Java code.

I soon will be submitting it to sourceforge.net and host it for the developers to take a look about what I am talking.

🙂


Php Framework CRUD model

November 27, 2006

Its time for framework, something which offers ready code for most common things we do for every new project. There are numbers of php frameworks available online which allows rapid application development. Also most of the frameworks varies from their config style. Learning curve is again involved in learning these new framework. In many cases I found its quite difficult to customize the frameworks. Every framework has their own style of code which you might not be familiar with.

Then what to do, I thought how about writing my own framework. Some points which basic CRUD model should have are :

-Ready Classes structure
-Code formatting
-Form generation
-Validation
-Easy to understand by any other developer
-Should allow generation of Create, Read, Update and Delete in short CRUD

I have started thinking on the same line. I gone through old codes and started observing the common structure.
-in most of my projects I found all the classe has common structure
-common methods in each class eg. getByID, getAll, addUpdate
-inclusion of file is of same pattern
-most of the php code were common.

After identifying all these points, I started buidling my own framework. You believe me or not, my very basic framework was ready in just 2 hours.

I enjoyed building my own framework.

I will share my experience of building it next time.