popphp / pop-web
此包已被废弃,不再维护。未建议替代包。
Pop PHP 框架的 Pop Web 组件
2.1.0p1
2016-07-08 04:42 UTC
Requires
- php: >=5.4.0
README
生命终止
现在 pop-web
组件 v2.1.0 已达到生命终止。会话和cookie子组件已被分支并推入各自的独立仓库
- popphp/pop-session
- popphp/pop-cookie
剩余的子组件和类将不再受支持。
概述
pop-web
是一组可用于基于 Web 的应用程序的 Web 工具。它包含核心功能,帮助使用、解析和操作会话、cookie、移动设备和浏览器及服务器数据。
pop-web
是 Pop PHP 框架 的一个组件。
安装
使用 Composer 安装 pop-web
。
composer require popphp/pop-web
基本使用
使用会话
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();
高级会话使用
基于时间过期的会话值
use Pop\Web\Session; $sess = Session::getInstance(); $sess->setTimedValue('foo', 'bar', 10); // # of seconds if (isset($sess->foo)) { echo $sess->foo; } else { echo 'Nope!'; }
基于请求次数的会话值
use Pop\Web\Session; $sess = Session::getInstance(); $sess->setRequestValue('foo', 'bar', 1); // # of requests if (isset($sess->foo)) { echo $sess->foo; } else { echo 'Nope!'; }
基于命名空间数量的会话值
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!'; }
使用 cookie
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']);
访问服务器数据
$server = new Pop\Web\Server(); // Linux echo $server->getOs(); // Ubuntu echo $server->getDistro(); // Apache echo $server->getServer(); // 2.4 echo $server->getServerVersion();
访问浏览器数据
$browser = new Pop\Web\Browser(); // Firefox echo $browser->getName(); // 39.0 echo $browser->getVersion(); // Linux echo $browser->getPlatform(); // Returns false if ($browser->isMsie()) {}
管理移动请求和重定向
自动检测和路由
$mobile = new Pop\Web\Mobile([ 'desktop' => 'http://www.mydomain.com/', 'tablet' => 'http://tablet.mydomain.com/', 'mobile' => 'http://mobile.mydomain.com/' ]); $mobile->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();