指定した日付と場所についての日の出時刻を返す

# date_sunrise

(PHP 5, PHP 7, PHP 8)

date_sunrise — 指定した日付と場所についての日の出時刻を返す

警告

この関数は PHP 8.1.0 で 非推奨 になります。 この機能に頼らないことを強く推奨します。 代わりに date_sun_info() を使ってください。

### 説明

#[\Deprecated]
function date_sunrise(
int `$timestamp`,
int `$returnFormat` = SUNFUNCS_RET_STRING,
?float `$latitude` = null,
?float `$longitude` = null,
?float `$zenith` = null,
?float `$utcOffset` = null
): string|int|float|false

date_sunrise() は、与えられた日付 (`timestamp` で指定する) と場所についての日の出の時刻を返します。

### パラメータ

`timestamp`

  日の出時刻を取得する日の `timestamp`。

`returnFormat`

  `returnFormat` 定数
  定数 | 説明 | 例
  --- | --- | ---
  SUNFUNCS_RET_STRING | 結果を string で返します。 | 16:46
  SUNFUNCS_RET_DOUBLE | 結果を float で返します。 | 16.78243132
  SUNFUNCS_RET_TIMESTAMP | 結果を int (タイムスタンプ) で返します。 | 1095034606

`latitude`

  デフォルトは北緯で、南緯は負の値で表します。 date.default_latitude も参照ください。

`longitude`

  デフォルトは東経で、西経は負の値で表します。 date.default_longitude も参照ください。

`zenith`

  `zenith` は 太陽の中心と、地球の表面からの垂線の間になす角度です。 デフォルトは date.sunrise_zenith です。

  一般的な `zenith` の角度
  角度 | 説明
  --- | ---
  90°50' | 日の出: 太陽が見えるようになる点
  96° | 市民薄明: 夜明けの始まりを示すのに慣習的に使われます
  102° | 航海薄明: 海の上で、水平線が見えはじめる点
  108° | 天文薄明: 太陽があらゆる明かりの光源になりはじめる点

`utcOffset`

  時間単位で指定します。 `returnFormat` が `SUNFUNCS_RET_TIMESTAMP` の場合は、 `utcOffset` は無視されます。

### 戻り値

日の出時刻を、指定した `returnFormat` で返します。 失敗した場合に `false` を返します。 失敗する潜在的な可能性があります。太陽が全く昇らない場合です。 これは一年のある時期、極圏の中にある場合に起こります。

### エラー / 例外

すべての日付/時刻関数は、 有効なタイムゾーンが設定されていない場合に `E_WARNING` を発生させます。 date_default_timezone_set() も参照ください。

### 変更履歴

バージョン | 説明
--- | ---
8.1.0 | この関数は、推奨されなくなりました。 date_sun_info() を代わりに使って下さい。
8.0.0 | `latitude`, `longitude`, `zenith`, `utcOffset` は、nullable になりました。

### 例

例1 date_sunrise() の例

    <?php

    /* ポルトガル リスボンの日の出時刻を計算する
    緯度: 北緯 38.4
    経度: 西経 9
    天頂 ~= 90
    時差: +1 GMT
    */

    echo date("D M d Y"). ', sunrise time : ' .date_sunrise(time(), SUNFUNCS_RET_STRING, 38.4, -9, 90, 1);

上の例の出力は、 たとえば以下のようになります。

    Deprecated: Constant SUNFUNCS_RET_STRING is deprecated in script on line 10
    Deprecated: Function date_sunrise() is deprecated since 8.1, use date_sun_info() instead in script on line 10
    Mon Dec 20 2004, sunrise time : 08:54

例2 No sunrise

    <?php
    $solstice = strtotime('2017-12-21');
    var_dump(date_sunrise($solstice, SUNFUNCS_RET_STRING, 69.245833, -53.537222));

上の例の出力は以下となります。

    Deprecated: Constant SUNFUNCS_RET_STRING is deprecated in script on line 3
    Deprecated: Function date_sunrise() is deprecated since 8.1, use date_sun_info() instead in script on line 3
    bool(false)

### 参考

- date_sun_info() - 日の出/日の入り時刻と薄明 (twilight) の開始/終了時刻の情報を含む配列を返す

`↑` and `↓` to navigate • `Enter` to select • `Esc` to close • `/` to open