WinFuture-Forum.de: Php Zahlenwert - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
Seite 1 von 1

Php Zahlenwert


#1 Mitglied ist offline   Party 

  • Gruppe: aktive Mitglieder
  • Beiträge: 501
  • Beigetreten: 16. Januar 04
  • Reputation: 0

geschrieben 07. Mai 2008 - 13:12

hallo liebe community

ich habe eine kleine frage und zwar habe ich eine zahl die lautet : 0000012 wenn ich diese einer Variable übergeben und ausgebe dann kommt irgendeine zahl raus ich bräuchte aber die dass es mir nur die 12 herschreibt gibt es eine funktion wie z.b int() dafür oder so was ähnliches oder wie löse ich das am besten . vielen dank für eure hilfe.
0

Anzeige



#2 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 07. Mai 2008 - 13:35

muahaha...php ist witzig.

Durch die führenden Nullen denkt php, dass das eine Oktalzahl ist. Dafür gibt es die Funktion octdec.
Soweit so gut und verständlich...

Jetzt wird's witzig...ich kann mir gerade beim besten Willen nicht erklären, warum jedoch der umgekehrte Weg funktioniert:
decoct(0000012)

0

#3 Mitglied ist offline   Party 

  • Gruppe: aktive Mitglieder
  • Beiträge: 501
  • Beigetreten: 16. Januar 04
  • Reputation: 0

geschrieben 07. Mai 2008 - 13:53

hehe witzig :D aber mittels 00009 funktioniert es wieder nicht da dann 0 rauskommt

hab es jetzt mit
	
$zahl = "00012";
echo str_replace('0','',$zahl);

auf einfache weise gelöst. ist glaube ich am besten :)
0

#4 Mitglied ist offline   G.I.Joe 

  • Gruppe: aktive Mitglieder
  • Beiträge: 978
  • Beigetreten: 19. September 04
  • Reputation: 0

geschrieben 07. Mai 2008 - 13:59

Ähm, ich kann zwar kaum PHP aber ersetzt du nicht auch nicht-führende Nullen? Also machst z.B. aus 100 eine 1?
Mit einem regulären Ausdruck sollte das schöner gehen.

Dieser Beitrag wurde von G.I.Joe bearbeitet: 07. Mai 2008 - 14:00

Eingefügtes Bild Eingefügtes Bild
0

#5 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.942
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 07. Mai 2008 - 14:14

Zitat

aber mittels 00009 funktioniert es wieder nicht da dann 0 rauskommt

Hmm...irgendwie kaputt der Mist. Egal, die Nullen einfach ersetzen ist schon geschickter.
0

#6 Mitglied ist offline   tavoc 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.446
  • Beigetreten: 22. Juli 04
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 07. Mai 2008 - 14:48

Beitrag anzeigenZitat (Party: 07.05.2008, 14:53)

hehe witzig :wink: aber mittels 00009 funktioniert es wieder nicht da dann 0 rauskommt

hab es jetzt mit
	
$zahl = "00012";
echo str_replace('0','',$zahl);

auf einfache weise gelöst. ist glaube ich am besten :D



Damit machst du aus 0000020 eine 2, ich glaub nicht das dies gewünscht ist...
your IP is 127.0.0.1 or ::1
you are running an OS
you use a Browser
I know so much about you...
0

#7 Mitglied ist offline   sibbl 

  • Gruppe: aktive Mitglieder
  • Beiträge: 377
  • Beigetreten: 30. Dezember 06
  • Reputation: 3
  • Wohnort:localhost

geschrieben 07. Mai 2008 - 15:09

mal schnell eine funktion zusammengemeißelt - is wenig aufwand gewesen, bin nich so der pro. gibt sicher bessere varianten :wink:

<?php

function octdec2($zahl) {
	$len = strlen($zahl);
	for($i = 0; $i < $len; $i++) {
		if($zahl[$i] == "0") {
			$zahl[$i] = "";
		}else{
			$i = $len;
		}
	}
	return $zahl;
}
echo octdec2("000000200"); //gibt 200 zurück

?>

Dieser Beitrag wurde von sibbl bearbeitet: 07. Mai 2008 - 15:19

0

#8 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 07. Mai 2008 - 16:11

Warum so kompliziert? Teilt doch einfach durch 1.

$a = "00000000123";

echo($a/1);


gibt 123.

(und mit 0000200 klappt es auch)
(äh ja und "mal 1" geht natürlich genauso)

Dieser Beitrag wurde von Gitarremann bearbeitet: 07. Mai 2008 - 16:16

Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#9 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 07. Mai 2008 - 19:34

Könnte vielleicht wenigstens einer schreiben, dass meine Idee toll ist?
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#10 Mitglied ist offline   sibbl 

  • Gruppe: aktive Mitglieder
  • Beiträge: 377
  • Beigetreten: 30. Dezember 06
  • Reputation: 3
  • Wohnort:localhost

geschrieben 07. Mai 2008 - 20:33

stimmt eigentlich xD die typenkonvertierung von php is ja nich so doof/anspruchsvoll wie c++ ....
0

#11 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 07. Mai 2008 - 20:45

Mir war das neulich bei switch-Entscheidung wieder aufgefallen, dass PHP mit Variablen sehr variabel ist und dann dachte ich, dass das Problem ja ganz einfach zu lösen ist, indem man die Variable mit 100 multipliziert und wieder durch 100 teilt. Dann fiel mir ein, dass man das ja nicht mit so großen Zahlen machen muß. Man kann ja auch mit 50 multiplizieren und dann durch 50 dividieren. Dann fiel mir ein, so groß muß das ja auch nicht sein, dass kann man auch genausogut mit 10 machen und dann viel mir ein, dass geht ja dann genausogut mit 1 und erst dann fiel mir ein, dass man bei 1 ja gar nicht hin und her rechnen muß, sondern hin oder her ja ausreicht.
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#12 Mitglied ist offline   bartii 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.428
  • Beigetreten: 02. August 05
  • Reputation: 1
  • Geschlecht:Männlich

geschrieben 07. Mai 2008 - 20:49

Der Gedankengang war mindestens genauso lang wie die Funktion oben :wink:
Software is like sex. It is better when it's free.. (Linus Torvalds)
0

#13 Mitglied ist offline   Gitarremann 

  • Gruppe: aktive Mitglieder
  • Beiträge: 3.263
  • Beigetreten: 04. Juni 06
  • Reputation: 3
  • Geschlecht:Männlich
  • Wohnort:Trebnitz

geschrieben 07. Mai 2008 - 20:51

Beitrag anzeigenZitat (bartii: 07.05.2008, 21:49)

Der Gedankengang war mindestens genauso lang wie die Funktion oben :blink:


Ja aber dafür hätte man den Gedankengang nicht zu Ende führen müssen. Er hätte bei der Variante mit 100 schon zum richtigen Ergebnis geführt.
Der Pessimist sagt: "Das Glas ist halb leer,"
Der Optimist sagt: "Das Glas ist halb voll."
Der Realist sagt: "Bedienung, zwei Neue!"
0

#14 Mitglied ist offline   Party 

  • Gruppe: aktive Mitglieder
  • Beiträge: 501
  • Beigetreten: 16. Januar 04
  • Reputation: 0

geschrieben 08. Mai 2008 - 09:04

ja deine Idee war spitze :blink:
0

Thema verteilen:


Seite 1 von 1

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0