phpbar.de logo

Mailinglisten-Archive

[php] grössenlimit bei array-value = 16bit (?)

[php] grössenlimit bei array-value = 16bit (?)

Dario Nuevo php at xbe.ch
Don Jul 7 14:31:58 CEST 2005


hi leute..

als wahrer array-fan war mir nie bewusst, das anscheinend natürliche 
grenzen gesetzt sind.. und zwar kleine...

folgende situation: ich lese ein ziemlich grossen textstring aus einem 
mysql-text-feld.. (ein serialisierter array) und unserialize den text um 
meinen array wieder zu bekommen..
sprich:
<snip>
$rs->fetchInto($resi);
$data = stripslashes($resi["data"]);          
$data = unserialize($data);
</snip>

nun gibt es in diesem array ein grosses element "data".. und anscheinend 
ist dieses nun sehr lang, nämlich genau (auszug aus var_dump($data)):
<snip>
["data"]=> string(65535) "a:25:{s:13:
</snip>

aha, also 65535 zeichen - die zahl kam mir bekannt vor - und 
tatsächlich, wir rechnen 2^16 = 65536, genau 1 weniger..

PROBLEM jetzt: ich brauch den ganzen string, denn mein string ist länger!
wie komm ich nun zum rest des strings aus der db? wie kann ich den 
serialisierten array auslesen und irgendwie den ganzen text dort 
bekommen? kann man die grösse eines array-values irgendwie einstellen 
(ini-setting)? hätt nix gefunden...

hab nicht versucht, ob ein normaler string (das grosse feld seperat 
auslesen) funktioniert, also ob ein normaler string > 16bit ist.. sollte 
ja 32 sein.. denn dieser umbau würde in meinem fall einen sehr grossen 
aufwand bedeuten, drum weiss vielleicht jemand eine alternative lösung(?)

vielen dank
dario

php::bar PHP Wiki   -   Listenarchive