centralapps/application-context

此包的最新版本(dev-master)没有可用的许可证信息。

一组用于处理基于子域的Web应用程序的有用工具

dev-master 2013-02-25 15:27 UTC

This package is not auto-updated.

Last update: 2024-09-14 13:07:41 UTC


README

此组件旨在用于需要使用子域来分离数据/账户的应用程序中。

例如,如果您有域名mydomain.com,并且您的客户之一通过customername.mydomain.com登录并使用应用程序,此组件可以使查找客户详细信息以及确定应用程序正在运行的"上下文"(账户上下文或非账户上下文)变得简单。这可以让您正确地路由和管理应用程序。

安装

将项目添加到您的composer.json文件中

{
	"require": {
    	"centralapps/application-context": "dev-master"
	}
}

安装项目

php composer.phar update

使用方法

  1. 创建一个实现了LookupInterface的账户工厂,用于接受账户引用并创建账户对象。特定于应用程序的代码。

  2. 创建一个账户上下文对象,传入服务器名称、域名和账户工厂

  3. 上下文将随后设置,并存储账户的引用

    $account_context = new \CentralApps\ApplicationContext\Context($_SERVER['SERVER_NAME'], 'mydomain.com', $account_factory);

  4. 您可以检查应用程序是否以'账户上下文'运行

    $account_context->isAccountContext(); // 返回true或false

  5. 您还可以检查账户上下文是否有效(即子域是否与实际账户匹配)

    $account_context->isValidReference();

  6. 最后,您可以获取账户对象,该对象是通过您预定义的账户工厂检索的

    $account = $account_context->getAccount(); // 无效时返回null