ABA


"חישוב זמנים TimeStamp בPHP"
גירסת הדפסה        
קבוצות דיון בניית אתרים נושא #11779 מנהל    סגן המנהל    מפקח   Winner    צל"ש   מומחה  
אשכול מספר 11779
MoonHunter
חבר מתאריך 1.8.02
680 הודעות
   23:44   22.03.07   
אל הפורום  
  חישוב זמנים TimeStamp בPHP  
 
   ערכתי לאחרונה בתאריך 22.03.07 בשעה 23:55 בברכה, MoonHunter
 
אני רוצה לחשב את הזמנים של:
אתמול ב24:00, עכשיו, היום ב24:00.
אני עושה את החישוב באמצעות:

$round_numerator=60 * 60 * 24;
$now=time();

עכשיו:

$now

אתמול ב24:00:

( round ( $now / $round_numerator ) * $round_numerator )-60 * 60 * 12);

היום ב24:00:

( round ( $now / $round_numerator ) * $round_numerator )+(60 * 60 * 24);

אני אשמח לדעת למה אני מקבל כל הזמן את השעה 2:00 במקום 24:00 בשרת ובבית אני מקבל את התוצאה הנכונה (24:00).

אגב, אני מודע לכך שאפשר לעשות את החישוב כך:


$startOfDay = mktime(24,00,00, date("m"), date("d")-1, date("Y"));
$endOfDay = mktime(24,00,00, date("m"), date("d"), date("Y"));

אבל הצורה הזו בזבזנית מידי.


                                שתף        
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

  האשכול     מחבר     תאריך כתיבה     מספר  
  אני קצת שפוך מכדי לבדוק את זה לעומק code_blue  23.03.07 00:42 1
     מכתב akoka 23.03.07 01:13 2
         אני אשמח לראות איך תחשב את הTimeStamp: MoonHunter 23.03.07 12:21 3
  למה לא לעשות ככה? (פרטים בפנים) FireAngel 23.03.07 13:34 4
     בגלל שאני מחפש דיוק לא רק בתאריך אלא גם בשעה MoonHunter 23.03.07 14:34 6
  אממ akoka 23.03.07 14:01 5
     התגובה שלי לא שווה תגובה לפחות? akoka 23.03.07 14:55 7
         הגבתי, משום מה זה לא נשלח MoonHunter 23.03.07 15:18 8

       
code_blue  לחץ כאן להצגת דירוג המשתמש
חבר מתאריך 5.7.06
21280 הודעות, 7 פידבק
   00:42   23.03.07   
אל הפורום  
  1. אני קצת שפוך מכדי לבדוק את זה לעומק  
בתגובה להודעה מספר 0
 
   אבל סתם שאלה השרת הוא ישראלי?
ניסית לשים טג של TIME או DATE .. לראות מה הוא מציג?
אולי הוא בזמן אחר?
ייתכן מאוד שהוא לא מוגדר לאותו זמן כמו שעון ישראל
אז 24 שעות לפני אצלו זה 02:00
אנחנו GMT+2 לא לשכוח ..
ונראה לי שהקוד מחזיר זמן גריניץ ...
או את הזמן של אותו שרת .
צריך לבדוק


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   01:13   23.03.07   
אל הפורום  
  2. מכתב  
בתגובה להודעה מספר 1
 
   אל תסתבך יותר מדיי תשתמש בפונקציה getdate(); היא הופכת unix time stemp לזמן רגיל ומה שטוב בה שהיא מחלקת לך את הכול למערכים דקות שעות שניות הכול ככה שחיסורים ולעשות עליה מניפולציות אין בעיה אני אישית לא אוהב להשתמש בכול החישובים האלה תמיד יש פונקציה בPHP מניסיון גם אם אין יש פונקציה שתקרה אותך לפתרון תהנה ותגיד אם עזר

ואם כמו שרבי נחמן Code_blue אמר והזמן לא מכוון לgmt+2 תשתמש בפונקציה
date_ timezone_ set ותסדר את זה


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MoonHunter
חבר מתאריך 1.8.02
680 הודעות
   12:21   23.03.07   
אל הפורום  
  3. אני אשמח לראות איך תחשב את הTimeStamp:  
בתגובה להודעה מספר 2
 
   24:00 של אתמול ושל היום ושזה יעבוד בכל שרת.


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
FireAngel

   13:34   23.03.07   
אל הפורום  
  4. למה לא לעשות ככה? (פרטים בפנים)  
בתגובה להודעה מספר 0
 
  

<?php
$yesterday = time()-(60*60*24);
$nowTime = time();
?>


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MoonHunter
חבר מתאריך 1.8.02
680 הודעות
   14:34   23.03.07   
אל הפורום  
  6. בגלל שאני מחפש דיוק לא רק בתאריך אלא גם בשעה  
בתגובה להודעה מספר 4
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   14:01   23.03.07   
אל הפורום  
  5. אממ  
בתגובה להודעה מספר 0
 
   ערכתי לאחרונה בתאריך 23.03.07 בשעה 14:06 בברכה, akoka
 
סתם שילוב עם הרעיון שלך והרעיון שלי נותן תוצאה טובה אם זה מה שביקשת כמובן
זה הפלט של הקוד

StartOfday
23/3/2007
Time
0:0
End Of Day
24/3/2007
Time
0:0

וזה הקוד עצמו

<?php
$startOfDay = mktime(24,00,00, date("m"), date("d")-1, date("Y"));
$now=getdate($startOfDay);
echo "StartOfday</br>";
echo $now["mday"]."/".$now["mon"]."/".$now["year"]."</br>"."Time"."</br>".$now["hours"].":".$now["minutes"];
echo "</br>End Of Day</br>";
echo $now["mday"]+(1)."/".$now["mon"]."/".$now["year"]."</br>"."Time"."</br>".$now["hours"].":".$now["minutes"];;
?>

בעע שכחתי להוסיף לhours +12 נו לא משנה זה לא בעיה כבר


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
akoka

   14:55   23.03.07   
אל הפורום  
  7. התגובה שלי לא שווה תגובה לפחות?  
בתגובה להודעה מספר 5
 
  


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד
MoonHunter
חבר מתאריך 1.8.02
680 הודעות
   15:18   23.03.07   
אל הפורום  
  8. הגבתי, משום מה זה לא נשלח  
בתגובה להודעה מספר 7
 
   אני צריך את הTimeStamp של התאריך ולא את התאריך עצמו.

תודה על היחס


                                                         (ניהול: מחק תגובה)
מכתב זה והנלווה אליו, על אחריות ועל דעת הכותב בלבד

תגובה מהירה  למכתב מספר: 
 
___________________________________________________________________

___________________________________________________________________
למנהלים:  נעל | תייק בארכיון | מחק | העבר לפורום אחר | מחק תגובות | עגן אשכול
       



© כל הזכויות שמורות ל-רוטר.נט בע"מ rotter.net