php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2008

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 20.11.2008, 03:16  
Benutzer
 
Registriert seit: 09.08.2008
Beiträge: 35
Zender befindet sich auf einem aufstrebenden Ast
Standard Byte Arrays -> Operationen

Hallo Leute,

ich brauche Funktionen, um verschiedene Datentypen (Int, String) in ein Byte-Array zu schreiben und umgekehrt. Ich habe jetzt einige Zeit in der Doku gesucht, aber nichts dergleichen gefunden
Es geht also bspw darum ein byte-Array[1024] zu erstellen, und dort an Position x einen 4-byten langen Integer einzufügen.

Kann mir jemand einen passenden Ansatz empfehlen, wie werden solche Operationen in PHP erledigt?

Gruß, Zender
Zender ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 20.11.2008, 03:21  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

Vielleicht hilft Dir PHP: pack - Manual weiter.
David ist offline  
Alt 20.11.2008, 10:38  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.988
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Was genau ist denn ein byte-Array? Reicht nicht ein String? Den kannst Du ja auch als Array ansprechen.

[edit] Ok, vergiss es, es geht wohl wirklich um Binärdaten, oder?
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 20.11.2008, 11:21  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

Ich nehme an du kommst aus einer anderen Programmiersprache wo Variablentypen und Array-größen exakt definiert werden und versuchst jetzt so in PHP zu denken? Nun, sowas gibt es bei PHP nicht, du kannst alles überall reinschreiben und musst/kannst die Größe eines Arrays nicht bei der initialisierung festlegen. Alles flexibel.
cycap ist offline  
Alt 20.11.2008, 11:23  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.988
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Allerdings wird das nicht mit dem gewünschten Resultat funktionieren:

PHP-Code:
$string 'abcdefghij';
$string[4] = 'ddddd'
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 20.11.2008, 11:30  
Moderator
 
Benutzerbild von cycap
 
Registriert seit: 13.02.2008
Beiträge: 6.816
PHP-Kenntnisse:
Fortgeschritten
cycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nettcycap ist einfach richtig nett
Standard

wobei man mit OOP in PHP ja fest definierte Datentypen nachbauen könnte, falls man es wirklich benötigen sollte
cycap ist offline  
Alt 20.11.2008, 12:06  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.988
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Stimmt, mit nem Array-Member und einer __toString () Methode kommt man da schon ziemlich weit.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist offline  
Alt 20.11.2008, 16:56  
Erfahrener Benutzer
 
Registriert seit: 20.08.2008
Beiträge: 119
sharp befindet sich auf einem aufstrebenden Ast
Standard

hi,
Wo kommen deine Binärdaten her? Bevor sie ins Array gespeichert werden.
Wenn es z.b Dezimale Werte sind ist dir ja schon mit decbin() und is_binary() geholfen um sie in Binärer form weg zuschreiben.
sharp ist offline  
Alt 23.11.2008, 20:15  
Benutzer
 
Registriert seit: 09.08.2008
Beiträge: 35
Zender befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von cycap Beitrag anzeigen
Ich nehme an du kommst aus einer anderen Programmiersprache wo Variablentypen und Array-größen exakt definiert werden und versuchst jetzt so in PHP zu denken? Nun, sowas gibt es bei PHP nicht, du kannst alles überall reinschreiben und musst/kannst die Größe eines Arrays nicht bei der initialisierung festlegen. Alles flexibel.
so siehts aus... Ich weiß natürlich, dass es in PHP im Prinzip keine festen Datentypen gibt, die Überschrift ist wohl eher ungeschickt gewählt.

Aber es muss doch irgendwie möglich sein, eine Bytefolge aus vorher gegebenen Ints, Strings etc zu bilden und diesen dann später per Stream (Socket) zu senden oder?

pack() sieht schon ganz gut aus... Wie managed PHP das denn intern, wenn ich bspw eine Variable mit pack() fülle und an diese dann einen String anhänge? Welches Format hat dann die Variable?
Zender ist offline  
Alt 24.11.2008, 09:19  
Erfahrener Benutzer
 
Benutzerbild von David
 
Registriert seit: 05.09.2007
Beiträge: 5.044
David wird schon bald berühmt werden
Standard

pack() liefert eine Zeichenkette und eine Zeichenkettenverknüpfung ergibt immer eine Zeichenkette.
David ist offline  
 


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
If-Abfrage mit mehrdimensionalen Arrays fehlerhaft aherzog PHP Tipps 2008 19 23.06.2008 08:16
Variable Variablen zusammen mit Arrays Kenshin PHP Tipps 2008 2 20.04.2008 15:30
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
ftp_put: Hochgeladene Dateien immer nur 0 byte groß PHP Tipps 2007 5 17.11.2005 02:07
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
5 assosiative arrays gleichzeitig sortieren PHP Tipps 2004-2 2 13.12.2004 14:07
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 byte, php byte array, php bytearray, php string to byte array, php byte array to string, byte array php, byte php, php bytes, bytearray php, php bytearray to string, php array operationen, php operationen, php byte stream, operationen php, php byte schreiben, php byte to int, php bytea, php string to bytearray, php byte lesen, php byte[]

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:22 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