Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.php > #6230
| Message-ID | <2323676.ZLtig6B16M@PointedEars.de> (permalink) |
|---|---|
| From | Thomas 'PointedEars' Lahn <PointedEars@web.de> |
| Organization | PointedEars Software (PES) |
| Date | 2012-05-30 22:34 +0200 |
| Subject | Re: implode/explode vs serialize/unserialize |
| Newsgroups | comp.lang.php |
| References | <jq2im6$u4p$1@speranza.aioe.org> <4fc4dae4$0$6908$e4fe514c@news2.news.xs4all.nl> <jq576g$phf$1@speranza.aioe.org> |
| Followup-To | comp.lang.php |
Followups directed to: comp.lang.php
bill wrote: > On 5/29/2012 10:19 AM, Erwin Moller wrote: >> On 5/29/2012 3:24 PM, bill wrote: >>> Would one of the more knowledgeable folk discuss when it is >>> appropriate >>> to use implode/explode and when it is appropriate to use >>> serialize/unserialize. >>> >>> It seems that for 1D arrays implode is better in that is only >>> adds 1 >>> character per array element and serialize adds many. >>> >>> For objects, serialze is the only way to go. >>> >>> in between ? >>> >>> bill >> >> That is a vague question without more context. >> Shooting from the hip I would suggest you use serialize only if >> you need to store/transport a complex structure. >> And use implode and explode only when you want to create a string >> from a simple array (no arrays in arrays), and the other way around. Utter nonsense. > Your shot from the hip is exactly what I was looking for - thanks. No it is not. The problem with that approach is that implode() is _not_ generally reversible with explode(), even in a simple, one-dimensional array where all elements are of the same type. It does not work if the array elements are of different type or are not strings (because the values are type-converted to string, and exploding a string results in array of string elements), and it does not work if the delimiter (say, `,') is part of any array string element, assuming that all values are strings already. And if you knew exactly what was in an array, you would not need to implode() it in the first place. So if you want to preserve a data structure in string form for later restore, use serialize() and unserialize(), nothing else. PointedEars -- Use any version of Microsoft Frontpage to create your site. (This won't prevent people from viewing your source, but no one will want to steal it.) -- from <http://www.vortex-webdesign.com/help/hidesource.htm> (404-comp.)
Back to comp.lang.php | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
implode/explode vs serialize/unserialize bill <william@TechServSys.com> - 2012-05-29 09:24 -0400
Re: implode/explode vs serialize/unserialize Jerry Stuckle <jstucklex@attglobal.net> - 2012-05-29 09:53 -0400
Re: implode/explode vs serialize/unserialize Erwin Moller <erwinmollerusenet@xs4all.nl> - 2012-05-29 16:19 +0200
Re: implode/explode vs serialize/unserialize Erwin Moller <erwinmollerusenet@xs4all.nl> - 2012-05-29 16:22 +0200
Re: implode/explode vs serialize/unserialize bill <william@TechServSys.com> - 2012-05-30 09:26 -0400
Re: implode/explode vs serialize/unserialize Jerry Stuckle <jstucklex@attglobal.net> - 2012-05-30 12:57 -0400
Re: implode/explode vs serialize/unserialize Scott Johnson <noonehome@chalupasworld.com> - 2012-05-30 13:35 -0700
Re: implode/explode vs serialize/unserialize Jerry Stuckle <jstucklex@attglobal.net> - 2012-05-30 17:37 -0400
Re: implode/explode vs serialize/unserialize Scott Johnson <noonehome@chalupasworld.com> - 2012-05-31 16:45 -0700
Re: implode/explode vs serialize/unserialize Erwin Moller <erwinmollerusenet@xs4all.nl> - 2012-05-30 20:37 +0200
Re: implode/explode vs serialize/unserialize Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-05-30 22:34 +0200
Re: implode/explode vs serialize/unserialize Thomas 'PointedEars' Lahn <PointedEars@web.de> - 2012-05-29 16:07 +0200
csiph-web