guolei19850528/laravel-tiehu

Laravel Tiehu 是一个专为 Laravel 框架设计的铁虎停车场系统 API 服务扩展,提供便捷的接口与铁虎停车场系统进行交互。

Installs: 0

Dependents: 0

Suggesters: 0

Security: 0

pkg:composer/guolei19850528/laravel-tiehu

dev-master 2026-01-05 04:24 UTC

This package is not auto-updated.

Last update: 2026-01-06 02:42:46 UTC


README

扩展介绍

Laravel Tiehu 是一个专为 Laravel 框架设计的铁虎停车场系统 API 服务扩展,提供便捷的接口与铁虎停车场系统进行交互。

功能特性

  • 支持铁虎停车场系统 API 调用
  • 自动生成请求签名
  • 支持多停车场配置
  • 灵活的响应处理机制
  • 简洁易用的 API 接口

安装方法

使用 Composer 安装扩展:

composer require guolei19850528/laravel-tiehu

配置说明

发布配置文件

将扩展的配置文件发布到项目中:

php artisan vendor:publish --provider="Guolei19850528\LaravelTiehu\TiehuServiceProvider"

发布后,配置文件将位于 config/guolei19850528-laravel-tiehu-config.php

配置参数说明

编辑配置文件,设置铁虎停车场系统的连接参数:

<?php
return [
    'pklot' => [
        // 停车场配置示例,可自定义名称
        'your_pklot_name' => [
            'baseUrl' => env('TIEHU_PKLOT_BASE_URL', 'https://api.example.com'),
            'appKey' => env('TIEHU_PKLOT_APP_KEY', 'your_app_key'),
            'parkingId' => env('TIEHU_PKLOT_PARKING_ID', 'your_parking_id'),
        ],
    ],
];

主要配置项说明

配置项类型默认值说明
baseUrlstringhttps://api.example.com铁虎停车场系统 API 基础地址
appKeystringyour_app_key铁虎停车场系统分配的应用密钥
parkingIdstringyour_parking_id停车场 ID

环境变量配置

建议在 .env 文件中设置敏感配置信息:

TIEHU_PKLOT_BASE_URL=https://your-api-domain.com
TIEHU_PKLOT_APP_KEY=your-actual-app-key
TIEHU_PKLOT_PARKING_ID=your-actual-parking-id

使用方法

基本使用

在控制器或服务中使用铁虎停车场 API:

<?php

namespace App\Http\Controllers;

use Guolei19850528\LaravelTiehu\Pklot\Api;

class ParkingController extends Controller
{
    public function getParkingInfo()
    {
        // 创建 API 实例
        $api = new Api();
        
        // 调用 API 获取停车场信息
        $response = $api->request('/parking/info', 'GET', [
            'parkingId' => 'your-parking-id'
        ]);
        
        // 处理响应
        return response()->json($response);
    }
}

使用配置实例

如果配置了多个停车场,可以指定使用特定实例:

<?php

namespace App\Http\Controllers;

use Guolei19850528\LaravelTiehu\Pklot\Api;

class ParkingController extends Controller
{
    public function getParkingInfo()
    {
        // 使用特定停车场配置实例
        $api = new Api('parking_central');
        
        // 调用 API 获取停车场信息
        $response = $api->request('/parking/info', 'GET');
        
        // 处理响应
        return response()->json($response);
    }
}

自定义配置

也可以在创建 API 实例时传入自定义配置:

<?php

namespace App\Http\Controllers;

use Guolei19850528\LaravelTiehu\Pklot\Api;

class ParkingController extends Controller
{
    public function getParkingInfo()
    {
        // 传入自定义配置
        $api = new Api([
            'baseUrl' => 'https://custom-api-domain.com',
            'appKey' => 'custom-app-key',
            'parkingId' => 'custom-parking-id'
        ]);
        
        // 调用 API 获取停车场信息
        $response = $api->request('/parking/info', 'GET');
        
        // 处理响应
        return response()->json($response);
    }
}

自定义响应处理

<?php

namespace App\Http\Controllers;

use Guolei19850528\LaravelTiehu\Pklot\Api;

class ParkingController extends Controller
{
    public function getParkingInfo()
    {
        $api = new Api();
        
        try {
            $response = $api->request('/parking/info', 'GET');
            
            // 成功处理
            if (isset($response['code']) && $response['code'] == 0) {
                return response()->json([
                    'success' => true,
                    'data' => $response['data']
                ]);
            }
            
            // 错误处理
            return response()->json([
                'success' => false,
                'message' => $response['message'] ?? '请求失败'
            ], 400);
            
        } catch (\Exception $e) {
            // 异常处理
            return response()->json([
                'success' => false,
                'message' => $e->getMessage()
            ], 500);
        }
    }
}

API 文档

Api 类

构造函数

public function __construct($nameOrConfig = null)
  • $nameOrConfig: 可选参数,可以是配置实例名称(字符串)或自定义配置数组

request 方法

public function request($path, $method = 'GET', $params = [])
  • $path: API 路径(字符串)
  • $method: 请求方法(字符串,默认为 'GET')
  • $params: 请求参数(数组,默认为空数组)
  • 返回值: API 响应数据(数组)

许可证

本扩展采用 MIT 许可证开源。

作者信息