popphp/pop-web 问题修复 & 功能扩展

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

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

popphp/pop-web

最新稳定版本:2.1.0p1

Composer 安装命令:

composer require popphp/pop-web

包简介

Pop Web Component for Pop PHP Framework

README 文档

README

END OF LIFE

The pop-web component v2.1.0 is now end-of-life. The session and cookie sub-components have been forked and pushed into their own individual repositories:

  • popphp/pop-session
  • popphp/pop-cookie

The remaining sub-components and classes will no longer be supported.

OVERVIEW

pop-web is collection of web-based tools that can be utilized by a web-based application. It contains core features that help to use, parse and manipulate sessions, cookies, mobile devices and browser and server data.

pop-web is a component of the Pop PHP Framework.

INSTALL

Install pop-web using Composer.

composer require popphp/pop-web

BASIC USAGE

Using sessions

use Pop\Web\Session;

$sess = Session::getInstance();

// Set session values
$sess->foo   = 'bar';
$sess['baz'] = 123;

// Access session values
echo $sess['foo'];
echo $sess->baz;

// Unset session values
unset($sess->foo);
unset($sess['baz']);

// Kill/clear out the session
$sess->kill();

Advanced session usage

Session values available based on time expiration:
use Pop\Web\Session;

$sess = Session::getInstance();
$sess->setTimedValue('foo', 'bar', 10); // # of seconds

if (isset($sess->foo)) {
    echo $sess->foo;
} else {
    echo 'Nope!';
}
Session values available based on number of requests:
use Pop\Web\Session;

$sess = Session::getInstance();
$sess->setRequestValue('foo', 'bar', 1); // # of requests

if (isset($sess->foo)) {
    echo $sess->foo;
} else {
    echo 'Nope!';
}
Session values available based on number of namespace:
use Pop\Web\SessionNamespace;

$sess = new SessionNamespace(__NAMESPACE__);
$sess->foo = 'bar'

if (isset($sess->foo)) {
    echo $sess->foo;  // Only available under the namespace passed.
} else {
    echo 'Nope!';
}

Using cookies

use Pop\Web\Cookie;

$cookie = Cookie::getInstance([
    'path'   => '/',
    'expire' => time() + 3600
]);

// Set cookie values
$cookie->foo = 'bar';
$cookie['baz'] = 123;

// Access cookie values
echo $cookie->foo;
echo $cookie['baz'];

// Unset cookie values
unset($cookie->foo);
unset($cookie['baz']);

Accessing server data

$server = new Pop\Web\Server();

// Linux
echo $server->getOs();

// Ubuntu
echo $server->getDistro();

// Apache
echo $server->getServer();

// 2.4
echo $server->getServerVersion();

Accessing browser data

$browser = new Pop\Web\Browser();

// Firefox
echo $browser->getName();

// 39.0
echo $browser->getVersion();

// Linux
echo $browser->getPlatform();

// Returns false
if ($browser->isMsie()) {}

Managing mobile requests and redirection

Auto-detect and route
$mobile = new Pop\Web\Mobile([
    'desktop' => 'http://www.mydomain.com/',
    'tablet'  => 'http://tablet.mydomain.com/',
    'mobile'  => 'http://mobile.mydomain.com/'
]);

$mobile->route();
Force redirect route
$mobile = new Pop\Web\Mobile([
    'desktop' => 'http://www.mydomain.com/',
    'tablet'  => 'http://tablet.mydomain.com/',
    'mobile'  => 'http://mobile.mydomain.com/'
]);

// If an iPad, force redirect
if ($mobile->isApple() && $mobile->isTablet()) {
    $mobile->setRoute(Pop\Web\Mobile::TABLET);
}

$mobile->route();

popphp/pop-web 适用场景与选型建议

popphp/pop-web 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 1.11k 次下载、GitHub Stars 达 2, 最近一次更新时间为 2014 年 12 月 05 日, 在 PHP 生态内属于活跃度较高的组件。

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

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

围绕 popphp/pop-web 我们能提供哪些服务?
定制开发 / 二次开发

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

BUG 修复 & 性能优化

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

项目外包 & 长期维护

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

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

统计信息

  • 总下载量: 1.11k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 2
  • 点击次数: 26
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 2
  • Watchers: 3
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: New
  • 更新时间: 2014-12-05