php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


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.

Antwort
 
LinkBack Themen-Optionen Bewertung: Bewertung: 1 Stimmen, 5,00 durchschnittlich.
  #1 (permalink)  
Alt 31-05-2003, 16:29
jOhnny knOx
 Senior Member
Links : Onlinestatus : jOhnny knOx ist offline
Registriert seit: Mar 2003
Beiträge: 561
jOhnny knOx ist zur Zeit noch ein unbeschriebenes Blatt
Standard Alter ausrechnen

Wie kann man aus einer Geburtstagvariable, welches in 3 Teilen eingeteilt ist (day,month,year) das Alter errechnen ?
Mit Zitat antworten
  #2 (permalink)  
Alt 31-05-2003, 16:34
hibatsu
 Junior Member
Links : Onlinestatus : hibatsu ist offline
Registriert seit: Apr 2003
Beiträge: 205
hibatsu ist zur Zeit noch ein unbeschriebenes Blatt
hibatsu eine Nachricht über ICQ schicken
Standard

Mit mktime (glaub ich).
__________________
Mit Zitat antworten
  #3 (permalink)  
Alt 31-05-2003, 17:03
archie
 PHP Junior
Links : Onlinestatus : archie ist offline
Registriert seit: Jan 2002
Ort: Berlin
Beiträge: 689
archie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also, kommt drauf an im welchen Format das Geburtstagsdatum gespeichert ist. Knns aber dann ummodeln:

PHP-Code:
<?php
$gebtag 
="08.07.1980";

$zerlegen explode (".",$gebtag);
$gebjahr="$zerlegen[2]";
$nowdate("Y");
$alter=$now-$gebjahr;
echo
"Du wurdest am $zerlegen[0] im Motan: $zerlegen[1] vor $alter Jahren geboren";

?>
Mit Zitat antworten
  #4 (permalink)  
Alt 31-05-2003, 17:05
hibatsu
 Junior Member
Links : Onlinestatus : hibatsu ist offline
Registriert seit: Apr 2003
Beiträge: 205
hibatsu ist zur Zeit noch ein unbeschriebenes Blatt
hibatsu eine Nachricht über ICQ schicken
Standard

Ähm, man wird immer im alter von 0 Jahren geboren. Zudem ist die Methode net allzu gut. Und Exploden musste ja net, da er sie als 3 Verschiedene Felder gespeichert hat.
__________________
Mit Zitat antworten
  #5 (permalink)  
Alt 31-05-2003, 17:06
Floriam
 PHP Senior
Links : Onlinestatus : Floriam ist offline
Registriert seit: May 2003
Ort: Deutschland
Beiträge: 1.432
Floriam ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Das Alter rechnet das auch nicht aus
Mit Zitat antworten
  #6 (permalink)  
Alt 31-05-2003, 17:07
archie
 PHP Junior
Links : Onlinestatus : archie ist offline
Registriert seit: Jan 2002
Ort: Berlin
Beiträge: 689
archie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Acha ihr besserwissser, komisch ich habs gerade ausprobiert und es hat funktioniert.
Auf jeden Fall ist mein Beitrag wohl sinnvoller als:
Zitat:
Mit mktime (glaub ich).
Mit Zitat antworten
  #7 (permalink)  
Alt 31-05-2003, 17:10
a4u
 Junior Member
Links : Onlinestatus : a4u ist offline
Registriert seit: Mar 2002
Beiträge: 172
a4u ist zur Zeit noch ein unbeschriebenes Blatt
Standard

So sollte es klappen:

PHP-Code:
$alter = ((date ("Y")) - (date ("Y",(mktime (0,0,0,$deinmonat,$deintag,$deinjahr))))); 
Weitere Infos:
http://de3.php.net/manual/de/function.date.php
http://de3.php.net/manual/de/function.mktime.php
__________________
Eventuelle Tippfehler bei PHP-Beispielen können durchaus vorkommen, aber es geht um die grundsätzliche Möglichkeit der Anwendung.

Es war einmal ein Benutzer, der hatte ein Problem mit ... PHP (http://de3.php.net/manual/de/) MySQL (http://dev.mysql.com/doc/mysql/de/) HTML (http://www.selfhtml.org/)

Wer suchet, der findet: http://www.php-resource.de/forum/search.php
Immer noch nichts? Dann frag!


Mit freundlichen Grüßen,
@4u
Mit Zitat antworten
  #8 (permalink)  
Alt 31-05-2003, 17:13
Floriam
 PHP Senior
Links : Onlinestatus : Floriam ist offline
Registriert seit: May 2003
Ort: Deutschland
Beiträge: 1.432
Floriam ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von archie
Acha ihr besserwissser, komisch ich habs gerade ausprobiert und es hat funktioniert.
Auf jeden Fall ist mein Beitrag wohl sinnvoller als der mit der mktime
Wie a4u gesagt hat (habs nicht probiert) ist mktime auch richtig, außerdem wollte ich dich nur drauf hinweisen
Mit Zitat antworten
  #9 (permalink)  
Alt 31-05-2003, 17:22
Payne_of_Death
 Master
Links : Onlinestatus : Payne_of_Death ist offline
Registriert seit: Dec 2002
Ort: Folterkeller Nr. 18
Beiträge: 2.953
Payne_of_Death ist zur Zeit noch ein unbeschriebenes Blatt
Payne_of_Death eine Nachricht über ICQ schicken Payne_of_Death eine Nachricht über AIM schicken Payne_of_Death eine Nachricht über Yahoo! schicken
Standard

berücksicht man da noch Schaltjahre dann oho
__________________
MfG Payne_of_Death

Manual(s): <-| PHP | MySQL | SELFHTML |->
Merke:
Du brauchst das Rad nicht neu erfinden ! <-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

Murphy`s Importanst LAWS
Jede Lösung bringt nur neue Probleme
Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
In jedem kleinen Problem steckt ein großes, das gern raus moechte.
Mit Zitat antworten
  #10 (permalink)  
Alt 31-05-2003, 17:27
jOhnny knOx
 Senior Member
Links : Onlinestatus : jOhnny knOx ist offline
Registriert seit: Mar 2003
Beiträge: 561
jOhnny knOx ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von a4u
So sollte es klappen:

PHP-Code:
$alter = ((date ("Y")) - (date ("Y",(mktime (0,0,0,$deinmonat,$deintag,$deinjahr))))); 
Weitere Infos:
http://de3.php.net/manual/de/function.date.php
http://de3.php.net/manual/de/function.mktime.php
Vielen Dank!
Mit Zitat antworten
  #11 (permalink)  
Alt 31-05-2003, 17:40
TobiaZ
  Moderator
Links : Onlinestatus : TobiaZ ist offline
Registriert seit: Jan 2001
Ort: MUC und MGL, Germany
Beiträge: 34.421
Blog-Einträge: 1
TobiaZ befindet sich auf einem aufstrebenden Ast
Standard

Warum suchst du nicht einfach zuerst mal!!!
__________________
ERST LESEN: Unsere Regeln. | Ich hab schon Pferde kotzen sehn!

READ THIS: Strings richtig trennen/verbinden | JOINs, das leidige Thema | Wegwerf E-Mail Adressen

Ich werde keinen privaten 1:1 Support leisten, außer ich biete ihn ausdrücklich an.

Wenn man sich selbst als "Noob" bezeichnet, sollte man die Finger davon lassen.
Wenn man gewillt ist daran etwas zu ändern, lernt man Grundlagen!
Mit Zitat antworten
  #12 (permalink)  
Alt 31-05-2003, 23:27
weserweb
 Junior Member
Links : Onlinestatus : weserweb ist offline
Registriert seit: Sep 2002
Ort: 20min vor der ostsee
Beiträge: 234
weserweb ist zur Zeit noch ein unbeschriebenes Blatt
weserweb eine Nachricht über ICQ schicken
Standard

OffTopic:

TobiaZ,
ich halte es deiner jugend zugute, aber so spricht man nicht mit menschen, die sich um rat suchend an das forum wenden.

in diesem thread haben sich fragen und antworten ergeben, völlig ohne deine mitwirkung.

du kannst es jedoch nicht lassen, auch noch deinen 'senf', der nichts mit dem inhalt zu tun hat, hinzuzufügen.

es gab in den 70ern das phänomen des manta-fahrers, der sich einen fuchsschwanz an die antenne hing. das diente dem ego.

hast du vielleicht ein ähnliches problem?

wenn du ein forum "steuern" möchtest, eröffne doch einfach ein eigenes. dann wärest du "herr im haus".

ansonsten antworte, wenn du spass daran hast, anderen zu helfen.
oder lass' es einfach.

übrigens, dieser "oberlehrer-ton" findet sich nur in deutsch-sprachigen foren. zufall?


Mit Zitat antworten
  #13 (permalink)  
Alt 31-05-2003, 23:50
LDSign
 Newbie
Links : Onlinestatus : LDSign ist offline
Registriert seit: Jan 2003
Beiträge: 29
LDSign ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Hi

Ich hatte mal vor langer Zeit was geschrieben, was auch die Schaltjahre berücksichtigt. Ist ungetestet, aber vielleicht hilfts ja:

PHP-Code:
    function alter($geburtsdatum) {
        
//Geburtstag in Timestamp konvertieren
        
list($gebjahr$gebmonat$gebtag) = explode("-"$geburtsdatum);
        
$geburt mktime(0,0,0,$gebmonat,$gebtag,$gebjahr);
        
// Aktuelles Datum als Timestamp
        
$aktuell=time();
        
// Millisekunden seid Geburt
        
$msek $aktuell $geburt;
        
//Alter in Tagen
        
$tage floor($msek/(3600*24));
        
//Alter in Jahren
        
$jahr floor($tage/365);
        
$gesamt $gebjahr+$jahr;
        
// Schaltjahre berücksichtigen (wenn die Jahreszahl durch 4 teilbar, dann Schaltjahr)
        
$i=0;
        for(
$gebjahr$gebjahr $gesamt$gebjahr++) {
             if(
$gebjahr == 0) {
                  
$i=$i+1;
            }
        }
        if (
$tage-((365*$jahr)+$i) < 0) {
            
$jahr--;
        }
        return 
$jahr;
    } 
Viele Grüße

Frank
Mit Zitat antworten
  #14 (permalink)  
Alt 01-06-2003, 00:06
MelloPie
 PHP Master
Links : Onlinestatus : MelloPie ist offline
Registriert seit: Jan 2002
Ort: Hessen
Beiträge: 4.380
MelloPie ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Also ich habs net alles gelesen aber ich hab mal dies hier benutzt:
bte. Schaltjahre werden von mktime berücksichtigt...

PHP-Code:
// $datum hier im Format YYYY-MM-DD
function getAlter($datum){
   
$age explode("-",$datum);
   
$alter date("Y",time())-$age[0];
   if (
mktime(0,0,0,date("m",time()),date("d",time()),date("Y",time())) < mktime(0,0,0,$age[1],$age[2],date("Y",time())))
      
$alter--;
   return 
$alter;
}
// end of getAlter() 
__________________
Beantworte nie Threads mit mehr als 15 followups...
Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25
Mit Zitat antworten
  #15 (permalink)  
Alt 01-06-2003, 00:53
a4u
 Junior Member
Links : Onlinestatus : a4u ist offline
Registriert seit: Mar 2002
Beiträge: 172
a4u ist zur Zeit noch ein unbeschriebenes Blatt
Standard

Zitat:
Original geschrieben von MelloPie
Also ich habs net alles gelesen aber ich hab mal dies hier benutzt:
bte. Schaltjahre werden von mktime berücksichtigt...

PHP-Code:
// $datum hier im Format YYYY-MM-DD
function getAlter($datum){
   
$age explode("-",$datum);
   
$alter date("Y",time())-$age[0];
   if (
mktime(0,0,0,date("m",time()),date("d",time()),date("Y",time())) < mktime(0,0,0,$age[1],$age[2],date("Y",time())))
      
$alter--;
   return 
$alter;
}
// end of getAlter() 
Einen Hinweis zur obigen Funktion: Wenn man date benutzt, kann man sich den Aufruf der time-Funktion sparen, da date automatisch bei fehlendem TimeStamp die aktuelle Zeit nimmt.
__________________
Eventuelle Tippfehler bei PHP-Beispielen können durchaus vorkommen, aber es geht um die grundsätzliche Möglichkeit der Anwendung.

Es war einmal ein Benutzer, der hatte ein Problem mit ... PHP (http://de3.php.net/manual/de/) MySQL (http://dev.mysql.com/doc/mysql/de/) HTML (http://www.selfhtml.org/)

Wer suchet, der findet: http://www.php-resource.de/forum/search.php
Immer noch nichts? Dann frag!


Mit freundlichen Grüßen,
@4u
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Themen-Optionen
Thema bewerten
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.

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


PHP News

Projektmanagement Damals und Heute
Projektmanagement Damals und HeuteWerfen Sie einen Blick auf das, was sich verändert hat, und entdecken Sie, wo die Zukunft dieses Gebietes hinsteuert.

18.01.2021 | Berni

Arbeitsmanagement-Tools
Arbeitsmanagement-ToolsWarum jedes Team Arbeitsmanagement-Tools benötigt. Man schätzt, dass 25% eines durchschnittlichen Mitarbeiter-Tages durch ineffiziente Arbeit vergeudet werden.

11.12.2020 | Berni


 

Aktuelle PHP Scripte

ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script ansehen ebiz-trader 6.0 - Das professionelle PHP Marktplatz Script

Mit unserer Lösungen können Sie nahezu jeden B2B / B2C Marktplatz betreiben den Sie sich vorstellen können. Ganz egal ob Sie einen Automarktplatz, Immobilenportal oder einfach einen Anzeigenmarkt betreiben möchten. Mit ebiz-trader können Sie Ihre Anforder

21.10.2020 Berni | Kategorie: PHP/ Anzeigenmarkt
Sendeplan Script inkl. Wunsch- und Grußbox + Kick-System + Bewerbungssystem

Das professionelle Sendeplan PHP Script inkl. Wunsch- und Grußbox + Kick-System für dein Webradio. Der übersichtliche Sendeplan bietet deinen Moderatoren und Zuhörern die perfekte Übersicht der aktuellen Shows! Du kannst nicht nur Sendungen eintragen, s

20.10.2020 drcomputer | Kategorie: PHP/ Web Radio
Newsmanager 2

Der Newsmanager 2 ist sehr Vielfältig und kann News schreiben, Newsletter versenden und RSS Feeds in einem erzeugen.

20.10.2020 Stephan_1972 | Kategorie: PHP/ News
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 06:27 Uhr.