Store and retrieve objects on server

Store and retrieve objects on server

am 23.08.2007 22:48:15 von grossespinne

Hello everybody!

Is there an efficient way of storing an instance of a PHP-class on the
server and retrieving it based on its ID? I would need it in an AJAX-
webpage in order to find the server-object corresponding to the HTML-
element that sent the request.

The ideas I have had so far:

- add a static method to each class that registers the instances in an
array indexed by the ID-strings and is called by the constructor of
the class -- thus each object registers itself when it gets
constructed. However this solution does not work, as rerunning the
script that contains the definition of the class deletes the
registered instances.

- store the object in the $_SESSION variable -- this works but I don't
thing it is the right way of doing it

- store the object serialized in a file -- have not tried yet, but I
don't think it would be efficient because I would have to update also
the files every time I add or remove a button/label/... from a page. I
think storing in a database would not be a suitable solution either,
for the same reason.


Any ideas are welcome. I would also appreciate if you could tell me
the proper name of the problem because I am quite sure that I am not
the first one experiencing it.

TIA

Re: Store and retrieve objects on server

am 23.08.2007 23:22:50 von nc

On Aug 23, 1:48 pm, grossespi...@gmail.com wrote:
>
> Is there an efficient way of storing an instance of
> a PHP-class on the server and retrieving it based on
> its ID? I would need it in an AJAX-webpage in order
> to find the server-object corresponding to the HTML-
> element that sent the request.

You really should reconsider your architecture. What you have in mind
seems to be unnecessarily complicated and unduly influenced by
Java... What, in your opinion, is the advantage of storing an object
compared to recreating it on the basis of data received?

> The ideas I have had so far:
[skip]
> - store the object in the $_SESSION variable -- this works
> but I don't thing it is the right way of doing it
>
> - store the object serialized in a file

The two solutions outlined above are conceptually the same; native PHP
sessions are stored in files.

> Any ideas are welcome.

You can store serialized objects in a database. Or you can just
figure out how to avoid having to store objects altogether...

Cheers,
NC