【问题标题】:What exactly is meant with PHPs php date.sunrise_zenith and php date.sunset_zenithPHP php date.sunrise_zenith 和 php date.sunset_zenith 到底是什么意思
【发布时间】:2017-05-03 22:38:57
【问题描述】:

date.sunrise_zenithdate.sunset_zenith 自 PHP 5.1 版本起就已在 PHP 中使用,因此已经存在 10 多年了。 直到现在,我从来没有使用过这些功能,所以在这一点上我从来没有抱怨过非常糟糕的手册。没有例子,没有真正的解释....可能是,它直到现在还没有被其他功能使用.... 但是有什么意义呢? 好的,date.default_latitudedate.default_longitude

我很快找到:在http://maps.google.de中搜索一个地方 结果将是:如果您单击“这里有什么?”第一个值是纬度,第二个是经度。但是date.sunrise_zenithdate.sunset_zenith 到底是什么意思呢?

我遇到的第一个问题:天顶,对我来说,是中午太阳在我上方的时候,所以既不是日落也不是日出。

我发现大多数例子都使用90,那么90是什么意思呢? 90° 地平线以上?这可能是,因为只有在赤道的 3 月 21 日9 月 21 日 的昼夜长度相同时,这才有可能。但是,在 3 月 21 日9 月 21 日,在世界的每个地方,白天和黑夜的长度都是一样的。所以这似乎是原因,为什么我发现的大多数例子都说date.sunrise_zenithdate.sunset_zenith 都在90 (°) 附近。

所以,我的问题: 如何准确确定特定地点的这两个值,例如德国慕尼黑? PHP 中没有一些人可以将此信息添加到 php 的手册中吗?谢谢!

【问题讨论】:

    标签: php date timezone find


    【解决方案1】:

    它应该是 90°,但由于地球大气的折射,太阳在升起之前和落下之后都是可见的。这意味着太阳的中心在地平线以下 50 角分,所以我们必须用这个值校正天顶(90°)以获得日出和日落的实时时间。

    这就是为什么你必须使用90°50' 作为date.sunrise_zenithdate.sunset_zenith 的值。

    一些参考here

    【讨论】:

      【解决方案2】:

      PHP 函数 date_sunrise()date_sunset() 使用 date.sunrise_zenithdate.sunset_zenith 计算有用的日出、日落或黄昏时间,例如:

      • 日出:太阳变得可见的点。
      • Civil twilight:通常用于表示黎明的开始。
      • 航海暮光:在海上开始可以看到地平线的那一点。
      • 天文暮光:太阳开始成为任何照明源的点。

      对于上述每一个,都有一个天文值date.sunrise_zenithdate.sunset_zenith

      查看PHP Manual中的示例

      【讨论】:

        猜你喜欢
        • 2019-01-24
        • 2011-01-24
        • 2012-05-04
        • 2011-01-02
        • 2010-11-17
        • 1970-01-01
        • 2011-07-12
        • 2011-06-13
        • 2011-03-07
        相关资源
        最近更新 更多