René Iversen wrote:
>> Du kan overføre et PHP-objekt ved hjælp af serialize() og
>> unserialize(). Der står en masse om emnet på PHP's hjemmeside:
>>
>>
http://dk.php.net/manual/en/language.oop.serialization.php
>>
>> Objekterne vil dog (såvidt jeg ved) ikke fungere i andre sprog end
>> PHP. Vær også opmærksom på "__wakeup()"-funktionen.
>>
> Og i det tilfælde skal en PHP bygget klient vel have klassen liggende
> for at kunne instantiere den.
Nej - ikke helt. Objektet kan faktisk oprettes, uden at klassen er
indlæst. Objektet vil så bare kun indeholde de data, som dit objekt
indeholder - ingen funktioner. Og det vil vidst også give en E_NOTICE
eller E_STRICT tror jeg nok.
I dokumentationen står der:
"It is strongly recommended that you include the class definitions of
all such registered objects on all of your pages, even if you do not
actually use these classes on all of your pages. If you don't and an
object is being unserialized without its class definition being present,
it will lose its class association and become an object of class
__PHP_Incomplete_Class_Name without any functions available at all, that
is, it will become quite useless."
--
Med venlig hilsen
Kasper Johansen