php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.02.2005, 09:52  
Gast
 
Beiträge: n/a
Standard [Erledigt] kann pack mit arrays umgehen ?

Ich suche eine Möglichkeit um verschiedene Werte (bis zu 14000, Wertebereich 0-2) platzsparend in eine DB zu speichern.
Mir schien pack und unpack dafür geeignet. Wenn ich einzelne Werte Komma getrennt pack übergebe funtktioniert das auch ziemlich gut, nur wenn ich ein Array übergebe kann ich die Daten später mit unpack nicht auslesen.
Bsp:

$tiles = array();
// fill $tiles with data
$binary = ("s*",$tiles);

$tiles_rec = array();
$tiles_rec = unpack("s*",$binary);

Weiß jemand was ich falsch mache oder kennt eine bessere Möglichkeit ?
Danke,
WiSo
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.02.2005, 10:39  
axo
Erfahrener Benutzer
 
Registriert seit: 24.12.2004
Beiträge: 1.814
axo ist zur Zeit noch ein unbeschriebenes Blatt
Standard

PHP-Code:
<?php
$stringToDb 
base64_encode(gzcompress(serialize($array)));
.......
$arrayFromDb unserialize(gzuncompress(base64_decode($stringFromDb)));
?>
viel spaß
axo ist offline   Mit Zitat antworten
Alt 18.02.2005, 10:57  
Gast
 
Beiträge: n/a
Standard

Danke.
Allerdings bekomme ich folgenden Fehler (Testarray mit 100 Felder, auch mit Level 1):
[error] PHP Warning: gzuncompress(): buffer error in XXXX
  Mit Zitat antworten
Alt 18.02.2005, 15:27  
Gast
 
Beiträge: n/a
Standard Re: kann pack mit arrays umgehen ?

Zitat:
Zitat von WiSo
Ich suche eine Möglichkeit um verschiedene Werte (bis zu 14000, Wertebereich 0-2) platzsparend in eine DB zu speichern.
Und warum muß der Speicherort unbedingt eine DB sein? Willst Du darin suchen? Falls nicht, gilt sinngemäß das:
16.3. Ist es sinnvoll, Bilder in einer Datenbank abzulegen?
http://www.php-faq.de/q/q-db-blob.html

Bezüglich der Serialisierung von Arrays das mal angucken:
http://test.php-help.info/serialize-1/ (Quelltexte werden angezeigt)
  Mit Zitat antworten
Alt 18.02.2005, 15:46  
Gast
 
Beiträge: n/a
Standard

Also ich seh da schon einen Unterschied zwischen Bildern und meinem Array . Eingebettet in einen binären varchar würde es auch nur ein Feld in Anspruch nehmen und ich denke nicht das der varchar so groß dafür sein müßte.
Die Werte gehören zu einem Spielfeld, welches für jeden Spieler und jedes Spiel vorkommen kann. Warum sollte ich das dann ins Filesystem schreiben wenn ich schon einen Table dafür habe ?
Den zweiten Link werde ich mir mal anschauen, danke.

WiSo
  Mit Zitat antworten
Alt 18.02.2005, 16:35  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von WiSo
Also ich seh da schon einen Unterschied zwischen Bildern und meinem Array .
Naja, genaugenommen ein Array mit 14000 binären Werten.

Zitat:
Eingebettet in einen binären varchar würde es auch nur ein Feld in Anspruch nehmen und ich denke nicht das der varchar so groß dafür sein müßte.
a. was ist ein "binärer varchar"?
b. das erinnert mich etwas an "Tabelle in Tabelle"
  Mit Zitat antworten
Alt 18.02.2005, 16:41  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von meikel
Naja, genaugenommen ein Array mit 14000 binären Werten.
Ok Aber bei einem Bild interessieren mich ja auch nicht die Pixel, sondern ich übergebe es als ganzes an den webserver.

Zitat:
a. was ist ein "binärer varchar"?
b. das erinnert mich etwas an "Tabelle in Tabelle"
a. http://dev.mysql.com/doc/mysql/en/binary-varbinary.html
b. naja, wie würdest Du denn X*14000 Werte am günstigsten ablegen ? Falls ich sie nicht packe - wie im DB Beispiel - darf ich dann auf dem Filesystem rumrödeln was auch nicht so effizient ist.
  Mit Zitat antworten
Alt 18.02.2005, 16:49  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von WiSo
Zitat:
Zitat von meikel
Naja, genaugenommen ein Array mit 14000 binären Werten.
Ok Aber bei einem Bild interessieren mich ja auch nicht die Pixel, sondern ich übergebe es als ganzes an den webserver.
Ich dachte hier an was anderes (s.u.)
Danke für die Info. Ich muß mir wohl doch mal das Handbuch neu reinziehen, damit ich nicht auf dem Stand von 3.23 und 4.0 sitzenbleibe.
Zitat:
b. naja, wie würdest Du denn X*14000 Werte am günstigsten ablegen?
Ich würde den Kram in die Session packen und das "Session-Verfallsdatum" hoch genug setzen.
  Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Mehrere Arrays summieren buggybugga PHP-Fortgeschrittene 8 22.07.2008 11:51
Variable Variablen zusammen mit Arrays Kenshin PHP Tipps 2008 2 20.04.2008 15:30
Service Pack für Windows Vista doch schon fast fertig? PHP Tipps 2007 0 03.08.2007 12:06
Microsoft verschiebt Service Pack für Windows Vista PHP Tipps 2007 0 03.08.2007 12:06
eindimensionale arrays sortieren webazubi PHP Tipps 2007 5 23.03.2007 18:11
Arrays sortieren, Bezeichnung, Preis Ticos PHP Tipps 2006 4 07.09.2006 19:37
Arrays kreuzen PHP Tipps 2006 13 08.03.2006 11:36
[Erledigt] 2 Arrays miteinander vergleichen PHP Tipps 2007 3 17.12.2005 16:54
Objektorientierter Zugriff auf Multidimensionale Arrays PHP-Fortgeschrittene 31 26.11.2005 21:46
Problem beim vergleichen von 2 Arrays PHP Tipps 2005-2 1 06.10.2005 14:25
zweidimensionale Arrays für Templates aufbereiten? PHP Tipps 2005 6 22.03.2005 20:49
Alle Kombinationen von mehreren Arrays PHP-Fortgeschrittene 2 18.02.2005 09:59
Erkennung von Arrays in Strings PHP-Fortgeschrittene 15 07.12.2004 13:00
2 arrays in abhängigkeit ??? PHP Tipps 2004 2 11.08.2004 21:19
Werte eines Arrays in eine MySQL schreiben PHP Tipps 2004 2 28.06.2004 13:32

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php pack array, php destruct unset string, php array pack, pack() umgehen java, pack array php, gzcompress umgehen, http://www.php.de/php-fortgeschrittene/18124-erledigt-kann-pack-mit-arrays-umgehen.html

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:19 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.