Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Größe in KB des Inhalts einer Variable feststellen

Diskussion: Größe in KB des Inhalts einer Variable feststellen im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hi ist es möglich die Größe des Inhaltes einer Variable zu bestimmen? Ich habe leider nix passendes gefunden. Ich ...

Antwort
Alt 29.06.08, 21:50   #1 (permalink)
ba2
Guest
 
Likes:
Größe in KB des Inhalts einer Variable feststellen

Anzeige

Hi

ist es möglich die Größe des Inhaltes einer Variable zu bestimmen?

Ich habe leider nix passendes gefunden.

Ich stelle mir das so vor:

PHP-Code:
<?php
$variable 
"12345";
$groesse irgendeinefunktion($variable);
echo 
$groesse;
echo 
" KB";
?>
ich hoffe ihr wisst was ich meine.

mfg ba2
  Mit Zitat antworten
Alt 29.06.08, 22:06   #2 (permalink)
 
Registriert seit: 08.06.08
BackSpace Leistung: Facit NTK
Likes: 0
Standard

PHP-Code:
<?php
$groesse 
floor(strlen(var_dump($variable))  / 1024);
?>
BackSpace ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 29.06.08, 22:15   #3 (permalink)
ba2
Guest
 
Likes:
Standard

Hi,

mit nur sizeof();

klappt es prima.

Deine anderen Varianten nicht so wirklich.


THX

mfg ba2
  Mit Zitat antworten
Alt 29.06.08, 22:17   #4 (permalink)
 
Registriert seit: 08.06.08
BackSpace Leistung: Facit NTK
Likes: 0
Standard

sizeof() liefert nur die anzahl der elemente eines arrays zurück und stimmt daher nicht ich hatte mich am anfang verschrieben und sizeof() statt strlen() geschrieben habs aber nun korrigiert
BackSpace ist offline   Mit Zitat antworten
Alt 29.06.08, 22:22   #5 (permalink)
ba2
Guest
 
Likes:
Standard

HM, die Ausgabe scheint trotzdem richtig zu sein

http://ba2.abba-skript.de/files/test.php

CODE:
PHP-Code:
<?php
$string 
"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh";
echo 
$groesse sizeof($string)  / 1024;

echo 
" KB";

echo 
"<br><br>";

echo 
floor(strlen(var_dump($string))  / 1024);
?>
EDIT: Wobei ich noch nicht getestet habe ob der Wert Plausibel ist
  Mit Zitat antworten
Alt 29.06.08, 22:27   #6 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 443
Standard

Ein Zeichen hat ein Byte. Soweit ich weiss ist das auch bei PHP so. Es reicht also die Zeichen im String zu zählen.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist gerade online   Mit Zitat antworten
Alt 29.06.08, 22:28   #7 (permalink)
 
Registriert seit: 08.06.08
BackSpace Leistung: Facit NTK
Likes: 0
Standard

naja strings werden in php ja auch als arrays gehandhabt, also wenn du nur vorhast damit die größe von strings zu berechnen kannste sizeof() nehmen oder direkt strlen(). ansonsten nimm meine funktion und lass das floor() weg, was ja nur dazu da ist es auf einen festen kb betrag abzurunden, dann funktionierts genauso
BackSpace ist offline   Mit Zitat antworten
Alt 29.06.08, 22:36   #8 (permalink)
ba2
Guest
 
Likes:
Standard

Danke,

ich habe es jetzt mit strlen() realisiert und Zähle die Zeichen.
  Mit Zitat antworten
Alt 30.06.08, 02:04   #9 (permalink)
 
Benutzerbild von metax.
 
Registriert seit: 22.01.07
metax. Leistung: 8086
metax. eine Nachricht über ICQ schicken
Likes: 10
Standard

Es ist in PHP sogar so, dass bei Multibyte-Zeichen (Unicode) in Strings mit strlen() diese auch als mehrere Zeichen gezählt werden, also:
strlen("ä") = 2
Du kriegst also tatsächlich die Anzahl der verwendeten Bytes mit strlen().
__________________
Wenn keiner zuschaut, teile ich heimlich durch Null!
Meine Homepage: Planet Metax | meine Bilder: DeviantArt | Twitter
metax. ist offline   Mit Zitat antworten
Alt 30.06.08, 08:58   #10 (permalink)
 
Registriert seit: 30.05.07
Woosh Leistung: Facit NTK
Likes: 0
Standard

Zitat:
Original von bitmuncher
Ein Zeichen hat ein Byte. Soweit ich weiss ist das auch bei PHP so. Es reicht also die Zeichen im String zu zählen.
Kommt das nicht auch auf die eingestellte Zeichenkodierung an? Zum Beispiel UTF-16 braucht ja 2 Byte pro Zeichen, oder?
Woosh ist offline   Mit Zitat antworten
Alt 30.06.08, 12:12   #11 (permalink)
Member of Honour
 
Benutzerbild von easteregg
 
Registriert seit: 14.09.07
easteregg Leistung: Pentium Ieasteregg Leistung: Pentium I
easteregg eine Nachricht über ICQ schicken
Likes: 62
Standard

Zitat:
Original von ba2
HM, die Ausgabe scheint trotzdem richtig zu sein

http://ba2.abba-skript.de/files/test.php

CODE:
PHP-Code:
<?php
$string 
"hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh";
echo 
$groesse sizeof($string)  / 1024;

echo 
" KB";

echo 
"<br><br>";

echo 
floor(strlen(var_dump($string))  / 1024);
?>
EDIT: Wobei ich noch nicht getestet habe ob der Wert Plausibel ist
das mit dem strlen vardump dürfte doch aber nich funktionieren, da var_dump nix zurück gibt, sondern nur die werte ausspuckt.

Code:
C:\Users\easteregg>php -r "$a = 'asldkjas'; echo strlen(var_dump($a));"
string(8) "asldkjas"
0
__________________
» Flattr mich! - Wenn dir mein Beitrag geholfen hat! «
<| 2 AMD Opterons 2384@ 8x3,2ghz | Tyan S2915 | 10GB | 2x 8800GT | 8400GS | Dell 3008WFP + 2x2007FP |>
easteregg ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Größe in KB des Inhalts einer Variable feststellen
Themen-Optionen
Ansicht

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

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


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
(bash) Einer Variable die Rückgabe von "find xyz" zuweisen valenterry Linux/UNIX 3 13.09.07 18:37
Wohnort feststellen.... dapartiou (In)security allgemein 10 27.01.07 21:26
Nen ganzen Block in einer Variable speichern?! TeeKayo2 Code Kitchen 7 22.10.05 20:07
VBS: Standardbrowser in neuem Fenster starten und Leerstellen in einer Variable durch "+" ersetzen $oul (In)security allgemein 2 02.09.05 14:34
mit einer Variable (C++) dark_game Code Kitchen 4 29.08.05 14:44


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61