编程笔记

编程笔记

一个现实在线老黄历的php页面实例
2025-02-28

要生成一个在线老黄历的 PHP 页面,你可以通过以下步骤实现:

1. 数据来源


老黄历数据可以通过调用第三方 API 来获取,例如天行数据提供了老黄历查询 API,使用前需要先在其官网注册并获取 API Key。

2. 编写 PHP 代码


php

<!DOCTYPE html><html lang="zh-CN"><head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>在线老黄历</title>
    <style>
        body {
            font-family: Arial, sans-serif;
            margin: 20px;
        }
        h1 {
            text-align: center;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            margin-top: 20px;
        }
        th, td {
            border: 1px solid #ccc;
            padding: 10px;
            text-align: left;
        }
    </style></head><body>
    <h1>在线老黄历</h1>
    <?php    // 天行数据老黄历 API 地址
    $apiUrl = 'https://api.tianapi.com/lhl/index';
    // 替换为你自己的 API Key
    $apiKey = 'your_api_key';

    // 获取当前日期
    $date = date('Y-m-d');

    // 构建请求参数
    $params = [
        'key' => $apiKey,
        'date' => $date
    ];

    // 拼接请求 URL
    $requestUrl = $apiUrl . '?' . http_build_query($params);

    // 初始化 cURL
    $ch = curl_init();
    // 设置 cURL 选项
    curl_setopt($ch, CURLOPT_URL, $requestUrl);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    // 执行 cURL 请求
    $response = curl_exec($ch);
    // 关闭 cURL
    curl_close($ch);

    // 解析 JSON 响应
    $data = json_decode($response, true);

    if ($data && $data['code'] == 200) {
        $result = $data['newslist'][0];
        ?>
        <table>
            <tr>
                <th>日期</th>
                <td><?php echo $result['date']; ?></td>
            </tr>
            <tr>
                <th>农历日期</th>
                <td><?php echo $result['lunar']; ?></td>
            </tr>
            <tr>
                <th>星期</th>
                <td><?php echo $result['week']; ?></td>
            </tr>
            <tr>
                <th>宜</th>
                <td><?php echo $result['suit']; ?></td>
            </tr>
            <tr>
                <th>忌</th>
                <td><?php echo $result['taboo']; ?></td>
            </tr>
            <tr>
                <th>吉神宜趋</th>
                <td><?php echo $result['jishen']; ?></td>
            </tr>
            <tr>
                <th>凶煞宜忌</th>
                <td><?php echo $result['xiongsa']; ?></td>
            </tr>
        </table>
        <?php    } else {
        echo '<p>获取老黄历数据失败,请检查 API Key 或稍后重试。</p>';
    }
    ?></body></html>

3. 代码解释


  • 引入必要的 HTML 结构:设置页面标题、样式,为显示老黄历数据做准备。

  • 设置 API 相关信息:指定天行数据老黄历 API 的地址和你的 API Key,获取当前日期并构建请求参数。

  • 发起 API 请求:使用 cURL 库向 API 发送请求,获取响应数据。

  • 解析并显示数据:将 API 返回的 JSON 数据解析为数组,若请求成功则将老黄历信息以表格形式展示在页面上;若失败则给出相应提示。

4. 使用方法


  1. 在天行数据官网注册账号,申请老黄历 API 并获取 API Key。

  2. 将代码中的 your_api_key 替换为你自己的 API Key。

  3. 将上述代码保存为一个 PHP 文件,例如 lunar_calendar.php,并上传到支持 PHP 的服务器上。

  4. 在浏览器中访问该 PHP 文件,即可查看当前日期的老黄历信息。

注意事项


  • 确保服务器已开启 cURL 扩展,否则无法正常发起 API 请求。

  • 不同的第三方 API 可能有不同的使用规则和请求参数,使用时需根据实际情况调整代码。