serialize specification

theo

Guest
serialize specification

День.

Кто нить занет где можно почитать о том как работает serialize.

P.S. мне надо убедить "начальство" в том что использовать serialize для передачи данных с клиента на сервер - это хорошие решение и что пнри выпуске новых версий PHP это бутед работать
 

theo

Guest
Автор оригинала: tony2001
"для передачи данных с клиента на сервер" ???
хм....я выразился наверное не совсем правельно...

есть функция на js которая формирует строку вида....скажем
Код:
a:1:{s:6:"dsname";a:3:{s:5:"phone";a:1:{i:0;s:7:"7578086";}s:7:"address";a:1:{i:0;s:9:"dzelzavas";}s:4:"city";a:3:{i:0;s:4:"riga";i:1;s:6:"moscow";i:2;s:6:"london";}}}[CODE]

на сервере мы делаем  unserialize и сразу работаем с массивом.

P.S. передача данных "стандартным" способом через post/get (on form submit) не подходит, т.к. это все работает через несколько иние механизмы
 

si

Administrator
Думаю лучше использовать что-то типа [m]WDDX[/m], тогда вы не будете привязаны к РНР вообще.
 

theo

Guest
Автор оригинала: si
Думаю лучше использовать что-то типа [m]WDDX[/m], тогда вы не будете привязаны к РНР вообще.
как вариант, но необходимо учесть, что сервер может быть и на linux/unix или win или macoc

будет ли wddx работать на всех этих платформах "одинаково"?
 

si

Administrator
Это стандарт. Если его реализация есть для нужной платформы-языка то все должно работать
 

telepuzik

тинки-винки
Автор оригинала: theo
P.S. передача данных "стандартным" способом через post/get (on form submit) не подходит, т.к. это все работает через несколько иние механизмы
да? интересно, може придумали что-то новенькое? а строку жабаскрипта ты не через get/post будешь передавать?
 

Macs

Guest
я тоже че-то не понял че это за механизмы такие, которые без гет/пост обходятся?
поделись технологией, плиз.
или у тебя клиент не браузер, а пхп не к веб серверу прикручен?
 

theo

Guest
Автор оригинала: theo
P.S. передача данных "стандартным" способом через post/get (on form submit) не подходит, т.к. это все работает через несколько иние механизмы
Macs, telepuzik - смотрим в книгу и видим фигу?
 

telepuzik

тинки-винки
Автор оригинала: theo

Macs, telepuzik - смотрим в книгу и видим фигу?
да, покажи книгу и в ней фигу! как передать параметры кроме гет/пост? объясни неучу! может прозрею...
 

Macs

Guest
видимо под нестандартными методами подразумевается то что форма не сабмитится, а жабаскрипт методом гет отправляет запрос с этим сериализованным массивом в качестве параметра
(заранее извиняюсь если ошибся)
 

telepuzik

тинки-винки
ну честно говоря перечитав все сначала могу сказать что такую строку кроме как постом передать не будеть хорошо - в гет она будет смотреться нехорошо.
совет какой - сделай свою процедуру сериализации/десериализации, и она гарантированно будет работать на всех версиях ПХП. Или используй тот же WDDX, как советовали - сам напишешь - будешь уверен в работоспособности.
А передать имхо все тки лучше через ПОСТ. делаешь строку и в нужный момент пихаешь в хидден поле.
 

Macs

Guest
мда...
как обычно на этом форуме получилось, что человек спросил что-то, допустил ошибку в вопросе и его начали учить жизни и программированию

вопрос был, как я понял, о синтаксисе строки получающейся в результате сериализации; для того чтоб написать на джскрипте свою функцию сериализации и пользоваться встроенным в пхп ансериалайз()

имхо не стоит пользоваться синтаксисом встроенной функции сериализации, поскольку он осложнен ее универсальностью. Напр. она сериализует и объекты, включая и их методы.

как я понял, необходимо сериализовать массивы.
только непонятно для чего, их и без этого легко загнать как в УРЛ для передачи гетом так и в хидден инпуты для передачи постом. Впрочем строго математически можно считать что:
1. джскрипт который преобразует массив в строку вида
a[1]=1&a[2]=3&a[a]=rrr
сериализует этот массив в строку
2. а пхп потом его автоматически десериализует.
 

tony2001

TeaM PHPClub
>имхо не стоит пользоваться синтаксисом встроенной функции
>сериализации, поскольку он осложнен ее универсальностью.
>Напр. она сериализует и объекты, включая и их методы.
речь о ней и не идет, насколько я понял.

гетом не надо передавать, тем более, что theo сказал "через post/get (on form submit) не подходит".
вот хотелось бы понять как же он передает тогда.
 

Macs

Guest
именно о о ней речь и шла
quote]Кто нить занет где можно почитать о том как работает serialize.[/QUOTE]
а то что theo сказал "через post/get (on form submit) не подходит" отнюдь не значит что через post/get (on form submit) не подходит. ну ошибся человек.

кстати ни кто не знает, можно ли заставить броузер (ИЕ, НН или Оперу) послать запрос HEAD ?
 

pachanga

Новичок
Автор оригинала: Macs
имхо не стоит пользоваться синтаксисом встроенной функции сериализации, поскольку он осложнен ее универсальностью. Напр. она сериализует и объекты, включая и их методы.
serialize() returns a string containing a byte-stream representation of any value that can be stored in PHP. unserialize() can use this string to recreate the original variable values. Using serialize to save an object will save all variables in an object. The functions in an object will not be saved, only the name of the class.
 

Macs

Guest
Note: In PHP 3, object properties will be serialized, but methods are lost. PHP 4 removes that limitation and restores both properties and methods. Please see the Serializing Objects section of Classes and Objects for more information.
 
Сверху