#29205 [Fbk->NoF]: NaN in php_sunrise_sunset()

From: Date: Fri, 18 Mar 2005 00:00:06 +0000
Subject: #29205 [Fbk->NoF]: NaN in php_sunrise_sunset()
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-75448@lists.php.net to get a copy of this message
ID: 29205 Updated by: php-bugs@lists.php.net Reported By: bjdouma at xs4all dot nl -Status: Feedback +Status: No Feedback Bug Type: Date/time related Operating System: Linux 2.6.7 PHP Version: 5.0.0 Assigned To: momo New Comment: No feedback was provided for this bug for over a week, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". Previous Comments: ------------------------------------------------------------------------ [2005-03-06 20:48:45] sniper@php.net Please try using this CVS snapshot: http://snaps.php.net/php5-latest.tar.gz For Windows: http://snaps.php.net/win32/php5-win32-latest.zip ------------------------------------------------------------------------ [2004-09-21 08:33:07] momo@php.net date_sunrise(gmmktime(1,1,1,7,21,2004),SUNFUNCS_RET_STRING, 67, 0, 90.83); returns 03:42 but yes i need to activate the check. ------------------------------------------------------------------------ [2004-07-16 11:54:17] bjdouma at xs4all dot nl Description: ------------ Good morning, Re. php-5.0.0 I noticed in sunfuncs.c/php_sunrise_sunset() there's this commented out snippet: /* XXX: What's the use of this block.. ? * if (!calc_sunset && cosH > 1 || calc_sunset && cosH < -1) { * throw doesnthappen(); * } */ What the 'if' clause actually would detect is cases where you have no sunrise or sunset, i.e. during the midnight sun period, on the Northern hemisphere around June 21st, above ca. 66.5 deg latitude. For instance, try: php_sunrise_sunset( 182, 66, 0, 90.83, 0 ); this should give a good value for sunrise, very early in the morning. Now try php_sunrise_sunset( 182, 67, 0, 90.83, 0 ); this should give NaN. The reason is obvious: above ca. 66.56 deg latitude in the summer (here day 182) you have the midnight sun period: the sun doesn't set and/or rise. However, this function isn't used anywhere -- is it? --bjd bjdouma@xs4all.nl ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=29205&edit=1

« previous php.bugs (#75448) next »