PHP-Abfrage ob Weihnachten ist? :D

11/30/2014 15:43 CeeNeo#1
Hat sich erledigt. :)
11/30/2014 19:26 snow#2
#moved

if (is_weihnachten()) { } höhöhö
12/01/2014 08:21 Failwell#3
Da es nervig ist, wenn man das bei Google sucht und dann nichts sinnvolles findet, hier eine mögliche Lösung:


if(date('d.m') == '24.12') {
echo 'its christmas';
}
12/01/2014 18:18 Crossside#4
Und weils nervt wenn mans findet und es dann nicht in Form einer schnieken Funktion ist ;) (nicht böse gemeint :D)

Code:
<?
function IsChristmas()
{
 date_default_timezone_set('UTC');
 $date = date("m.d");
 if($date=="24.12")
 {
  $tmp = TRUE;
 }else{
  $tmp = FALSE;
 }
 return $tmp;
}
wenn Weihnachten is liefert die Funktion IsChristmas() True zurück, wenn keins ist false. So lässt sich das innerhalb einer Webapplication besser nutzen finde ich.

grüße
12/01/2014 19:13 PixelTree#5
Quote:
Originally Posted by Crossside View Post
Und weils nervt wenn mans findet und es dann nicht in Form einer schnieken Funktion ist ;) (nicht böse gemeint :D)

Code:
<?
function IsChristmas()
{
 date_default_timezone_set('UTC');
 $date = date("m.d");
 if($date=="24.12")
 {
  $tmp = TRUE;
 }else{
  $tmp = FALSE;
 }
 return $tmp;
}
wenn Weihnachten is liefert die Funktion IsChristmas() True zurück, wenn keins ist false. So lässt sich das innerhalb einer Webapplication besser nutzen finde ich.

grüße
das lässt sich viel schöner schreiben...
PHP Code:
<?php

function isChristmas(){
    return 
date("j.n") == "24.12";
}
12/02/2014 14:21 Shawak#6
Code:
<?php

function isChristmas() { 
    return date("j.n") === '24.12'; 
}
mimimi
12/05/2014 21:10 dako314#7
Hauptsache noch schön 'ne Temp-Variable benutzt, finde deine Version auch viel besser und übersichtlicher. Man stelle sich nur eine große Klasse vor, die so aufgebaut wäre - schrecklich ;)

Quote:
Originally Posted by PixelTree View Post
das lässt sich viel schöner schreiben...
PHP Code:
<?php

function isChristmas(){
    return 
date("j.n") == "24.12";
}
12/05/2014 21:22 Crossside#8
Quote:
Originally Posted by dako314 View Post
Hauptsache noch schön 'ne Temp-Variable benutzt, finde deine Version auch viel besser und übersichtlicher. Man stelle sich nur eine große Klasse vor, die so aufgebaut wäre - schrecklich ;)
Was hast du gegen ne Temp Variable auszusetzen?
Ist ja nicht so als würde die Funktion Tausendmal pro Sekunde aufgerufen und müsste derbe Schnell & Leistungssparend sein. Da ist ne Temp Variable bequem und funktioniert auch. Von daher sehe ich nicht dein Problem dabei? Ist ja schließlich keine große Klasse sondern nur ne kleine Sache.
12/05/2014 21:26 snow#9
Quote:
Originally Posted by Crossside View Post
Was hast du gegen ne Temp Variable auszusetzen?
Ist ja nicht so als würde die Funktion Tausendmal pro Sekunde aufgerufen und müsste derbe Schnell & Leistungssparend sein. Da ist ne Temp Variable bequem und funktioniert auch. Von daher?
Dürfte eher darum gehen, dass du sehr redundanten Code produzierst:

Code:
if($date=="24.12")
 {
  $tmp = TRUE;
 }else{
  $tmp = FALSE;
 }
 return $tmp;
Schau dir nochmal an, wie das mit den Booleans geht.

if (true)
$var = TRUE;
else
$var = FALSE;
return $var;

ist das selbe wie

$var = true;
return $var;

oder eben

return true;

true ist hierbei eine Abfrage, die in diesem Falle true zurückgibt.
12/05/2014 23:41 NotEnoughForYou#10
Quote:
Originally Posted by dako314 View Post
Hauptsache noch schön 'ne Temp-Variable benutzt, finde deine Version auch viel besser und übersichtlicher. Man stelle sich nur eine große Klasse vor, die so aufgebaut wäre - schrecklich ;)
Dir ist schon klar, dass viele Sprachen bei einem return ebenfalls eine temp var auf den Stack hauen oder? Weiss grad nicht aus dem Kopf wie es php macht aber vermutlich nicht anders von daher ist es grad egal
12/06/2014 00:20 Crossside#11
Quote:
Originally Posted by snow View Post
[...]

Schau dir nochmal an, wie das mit den Booleans geht.
Ist mir bewusst, aber ob man es jetzt direkt zurückgibt oder erst zwischenspeichert macht eigendlich keinen großen Unterschied - endet im selben ergebnis. Man hätte es natürlich auch direkt returnen können, aber hab ich halt nicht in meinem Code so gemacht gehabt. Ändert aber nichts da die Funktion ohnehin nicht oft aufgerufen wird und es daher ja eigendlich Schnurz ist obs so oder so gemacht wird.

grüße
12/06/2014 11:33 dako314#12
Quote:
Originally Posted by NotEnoughForYou View Post
Dir ist schon klar, dass viele Sprachen bei einem return ebenfalls eine temp var auf den Stack hauen oder? Weiss grad nicht aus dem Kopf wie es php macht aber vermutlich nicht anders von daher ist es grad egal
Du hast schon recht...

Mir ging es lediglich darum, dass man die Methode einige Zeilen verkürzen kann. Meistens hat man ja nicht nur eine Funktion in einem Projekt und da ist es schon sinnvoll den Code auf wenige Zeilen zu reduzieren.

Aber im Grunde geht es hier ja nur um eine Methode, also ist ja alles okay :)
12/06/2014 16:49 Crossside#13
Quote:
Originally Posted by dako314 View Post
Du hast schon recht...

Mir ging es lediglich darum, dass man die Methode einige Zeilen verkürzen kann. Meistens hat man ja nicht nur eine Funktion in einem Projekt und da ist es schon sinnvoll den Code auf wenige Zeilen zu reduzieren.
Gebe ich dir natürlich Recht.
Hatte nur seit grob 2 Jahren nichts mehr groß mit PHP gearbeitet sondern nur noch mit Javascript, Html, Css und Java.. da achte ich normal auf sowas.. hatte da nur beim Posten nicht drauf geachtet auf die schnelle.. war auch mehr als Beispiel Funktion und nicht um sie jeztzt Produktiv in ner größeren Anwender Application anzuwenden gedacht. Soweit ich mich erinnere ging es hier ja nur um nen simplen kleinen Adventskalender für eine Freundin.. da muss nicht komplett alles perfekt sein (imho). Werd demnächst drauf achten ;)

grüße