PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks. |
 |

17-06-2008, 13:14
|
HansDerLange
Newbie
|
|
Registriert seit: Dec 2007
Beiträge: 137
|
|
Wie kann ich die zahl "100012" zerlegen und die letzten 2 Zahlen rausschneiden?
hallo..
Wie kann ich die zahl "100012" zerlegen und die letzten 2 Zahlen rausschneiden, so dass ich nur 12 erhalte??
danke im voraus!
|

17-06-2008, 13:15
|
case
Registrierter Benutzer
|
|
Registriert seit: Mar 2007
Beiträge: 265
|
|
Schau dir mal substr an....
Ja, es ist eine String-Funktion^^
__________________
signed oder unsigned... das ist hier die Frage
|

17-06-2008, 13:16
|
dani_o
PHP Senior
|
|
Registriert seit: Jun 2003
Ort: Lichtenstein/Sa.
Beiträge: 1.599
|
|
$max = strlen($string)
nachrechnen welche die letzten 2 sind
$new = $string[zahl].$string[zahl2]
__________________
Signatur-Text ...
|

17-06-2008, 13:23
|
TBT
 Moderator
|
|
Registriert seit: Sep 2002
Ort: Berlin
Beiträge: 2.787
|
|
geht's noch etwas komplizierter?
$neueZahl = $zahl % 100;
erfüllt auch seinen Zweck
|

17-06-2008, 13:23
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
Zitat:
Ja, es ist eine String-Funktion^^
|
Und bei einem solch unmathematischen Vorhaben ist das auch durchaus gerechtfertigt.
|

17-06-2008, 13:26
|
 |
onemorenerd
 Moderator
|
|
Registriert seit: Mar 2005
Ort: Berlin
Beiträge: 9.471
|
|
PHP-Code:
$n = intval("100012");
$n = $n - 100000;
|

17-06-2008, 16:36
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
PHP-Code:
$nr = '10012';
echo $nr{strlen($nr)-2}.$nr{strlen($nr)-1};
|

17-06-2008, 17:49
|
jmc
PHP Junior
|
|
Registriert seit: Mar 2006
Beiträge: 868
|
|
Wenn du das allgemein machen willst un dnicht nur in diesem Fall wäre substr($zahl, -2) für Strings am Besten und $Zahl %100 wohl für Zahlen. Der Rest ginge auch wäre aber nicht wirklich zu empfehlen.
|

17-06-2008, 18:34
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
OffTopic: Cool, wie kreativ ihr bei einer doch so simplen Problemstellung seid. 
|

18-06-2008, 10:45
|
jahlives
Master  
|
|
Registriert seit: Jun 2004
Ort: Hooker in Kernel
Beiträge: 8.279
|
|
Zitat:
Cool, wie kreativ ihr bei einer doch so simplen Problemstellung seid.
|
OffTopic:
Viele Wege führen nach Rom 
|

02-07-2008, 04:44
|
Flip7
Registrierter Benutzer
|
|
Registriert seit: May 2007
Ort: Munich
Beiträge: 126
|
|
Zitat:
$nr = '10012';
echo $nr{strlen($nr)-2}.$nr{strlen($nr)-1};
|
what? :-D
PHP-Code:
$deinerausgschnittenezahl = substr((string)$deinezahl, -2);
Maurer hoid :-D
|

02-07-2008, 09:48
|
TobiaZ
 Moderator
|
|
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
|
|
Da es der Lange da vorne sowieso nie für nötig hält, eine Rückmeldung auf seine Threads zu geben, mache ich hier einfach mal dicht. Ich glaube, wir haben so langsam die meisten Möglichkeiten durch und auch genug über Vor- und Nachteile gesprochen, oder?
*close*
|

02-07-2008, 14:10
|
Flip7
Registrierter Benutzer
|
|
Registriert seit: May 2007
Ort: Munich
Beiträge: 126
|
|
Meinst du wirklich, dass wir alles schon besprochen haben?
Welches Programm ist schneller?
Programm 1:
PHP-Code:
$n = "100012";
$lastfigures = ((int)$n) % 100;
Programm 2:
PHP-Code:
$n = "100012";
$lastfigures = (int)substr($n,-2);
Ich tippe auf Programm 2, weil der int-Cast bei ersten über 6 Bytes geht und unten nur über 2
Sowas braucht ausdiskutieren, weil der Herr mit seinem Thema "die letzten 2 Zahlen rausschneiden" sicher dieses Struktur mehrmals pro ms aufrufen muss...
Nicht ?
|

02-07-2008, 14:29
|
Griecherus
PHP Senior
|
|
Registriert seit: May 2005
Ort: Berlin
Beiträge: 1.036
|
|
In jedem Falle sind das keine Programme. 
Und ich behaupte mal, dass der Performanceunterschied trivial ist.
Grüße
Geändert von Griecherus (02-07-2008 um 14:33 Uhr)
|

02-07-2008, 14:44
|
unset
 Moderator
|
|
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
|
|
Vor allem, warum erst ein Integer auf String autocasten und dann wieder auf Integer zurück? Im ersten Beispiel macht das doch gar keinen Sinn.
BTW: microtime, for - tolle Benchmark-Werkzeuge.
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Themen-Optionen |
|
Thema bewerten |
|
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.
HTML-Code ist aus.
|
|
|
|
PHP News
|