risan/sl 问题修复 & 功能扩展

解决BUG、新增功能、兼容多环境部署,快速响应你的开发需求

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

risan/sl

Composer 安装命令:

composer require risan/sl

包简介

HTTP client library for sl.se, Stockholm public transportation API.

README 文档

README

Build Status HHVM Status StyleCI Scrutinizer Code Quality Code Coverage SensioLabs Insight Latest Stable Version License

PHP HTTP client library for communicating with sl.se—a Stockholm public transportation website.

Table of Contents

Dependencies

This package relies on the following libraries to work:

All above dependencies will be automatically downloaded if you are using Composer to install this package.

Installation

To install this library using Composer, simply run the following command inside your project directory:

composer require risan/sl

Or you may also add risan\sl package into your composer.json file like so:

"require": {
  "risan/sl": "~1.1"
}

And don't forget to run the following composer command to install this library:

composer install

Basic Usage

Here is some basic example to use this library:

<?php
// Include autoloder file.
require 'vendor/autoload.php';

// Create a new instance Sl\Sl.
$sl = new Sl\Sl();

// Search for station.
// Will return Sl\Collections\StationColection.
$stations = $sl->searchStation('Central Station');

// Find for departures.
// Will return Sl\Collections\DepartureColection.
$departures = $sl->departuresFrom($stations->first());

Search for Station

To search for a station, you may use the searchStation() method:

$sl->searchStation(string $query);

For example, if you'd like to find all stations that match the central word, then your code will look like this:

$sl = new Sl\Sl();

$stations = $sl->searchStation('central');

print_r($stations->toArray());

The searchStation() method will automatically perform a HTTP request to sl.se to search for stations that match the given $query. This method will return an instance of Sl\Collections\StationCollection class, which contains a collection of Sl\Station instances.

The StationCollection class itself is a subclass of Illuminate\Support\Collection, so you may leverage the powerful feature of Laravel's collection.

Find Departures

You may also find departures from a specific station using departuresFrom() method:

$sl->departuresFrom(Sl\Station $station);

This method will perform a HTTP request to sl.se website in order to find a list of departures for a given $station. Note that this method requires an argument that must be instance of Sl\Station class.

For example, if you need to find all departures from Slussen station, you can do the following:

$sl = new Sl\Sl();

$slussen = $sl->searchStation('slussen')->first();

$departures = $sl->departuresFrom($slussen);

print_r($departures->toArray());

The $departures will be an instance of Sl\Collections\DepartureCollection which hold a collection of Sl\Departure instances. The DepartureCollection is also a subclass of Illuminate\Support\Collection.

Bus Departures

To filter only the bus departures, call busses method:

$sl->departuresFrom(Sl\Station $station)->busses();

Train Departures

To filter only the train (pendeltåg) departures, call trains() method:

$sl->departuresFrom(Sl\Station $station)->trains();

Metro Departures

To filter only the metro (tunnelbana) departures, call metros() method:

$sl->departuresFrom(Sl\Station $station)->metros();

Tram Departures

To filter only the tram (spårvagn) departures, call trams() method:

$sl->departuresFrom(Sl\Station $station)->metros();

Light Rail Departures

To filter only the light rail (lokalbana) departures, call lightRails() method:

$sl->departuresFrom(Sl\Station $station)->lightRails();

Ship Departures

To filter only the ship or boat departures, call ships() method:

$sl->departuresFrom(Sl\Station $station)->ships();

risan/sl 适用场景与选型建议

risan/sl 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 11 次下载、GitHub Stars 达 0, 最近一次更新时间为 2015 年 12 月 16 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「transportation」 「sl.se」 「stockholm」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 risan/sl 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 risan/sl 我们能提供哪些服务?
定制开发 / 二次开发

基于 risan/sl 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 11
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 7
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2015-12-16