本文整理汇总了PHP中Cake\Network\Session类的典型用法代码示例。如果您正苦于以下问题:PHP Session类的具体用法?PHP Session怎么用?PHP Session使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Session类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: setUp
/**
* setUp method
*
* @return void
*/
public function setUp()
{
parent::setUp();
$this->View = new View();
$session = new Session();
$this->View->request = new Request(['session' => $session]);
$this->Flash = new FlashHelper($this->View);
$session->write(['Flash' => ['flash' => [['key' => 'flash', 'message' => 'This is a calling', 'element' => 'Flash/default', 'params' => []]], 'notification' => [['key' => 'notification', 'message' => 'This is a test of the emergency broadcasting system', 'element' => 'flash_helper', 'params' => ['title' => 'Notice!', 'name' => 'Alert!']]], 'classy' => [['key' => 'classy', 'message' => 'Recorded', 'element' => 'flash_classy', 'params' => []]], 'stack' => [['key' => 'flash', 'message' => 'This is a calling', 'element' => 'Flash/default', 'params' => []], ['key' => 'notification', 'message' => 'This is a test of the emergency broadcasting system', 'element' => 'flash_helper', 'params' => ['title' => 'Notice!', 'name' => 'Alert!']], ['key' => 'classy', 'message' => 'Recorded', 'element' => 'flash_classy', 'params' => []]]]]);
}
示例2: setUp
/**
* setUp method
*
* @return void
*/
public function setUp()
{
parent::setUp();
$this->View = new View();
$this->Session = new SessionHelper($this->View);
Session::start();
if (!Session::started()) {
Session::start();
}
$_SESSION = array('test' => 'info', 'Message' => array('flash' => array('element' => 'default', 'params' => array(), 'message' => 'This is a calling'), 'notification' => array('element' => 'session_helper', 'params' => array('title' => 'Notice!', 'name' => 'Alert!'), 'message' => 'This is a test of the emergency broadcasting system'), 'classy' => array('element' => 'default', 'params' => array('class' => 'positive'), 'message' => 'Recorded'), 'bare' => array('element' => null, 'message' => 'Bare message', 'params' => array())), 'Deeply' => array('nested' => array('key' => 'value')));
}
示例3: assertSession
/**
* Assert session contents
*
* @param string $expected The expected contents.
* @param string $path The session data path. Uses Hash::get() compatible notation
* @param string $message The failure message that will be appended to the generated message.
* @return void
*/
public function assertSession($expected, $path, $message = '')
{
if (empty($this->_requestSession)) {
$this->fail('There is no stored session data. Perhaps you need to run a request?');
}
$result = $this->_requestSession->read($path);
$this->assertEquals($expected, $result, 'Session content differs. ' . $message);
}
示例4: fromGlobals
/**
* {@inheritDoc}
*/
public static function fromGlobals(array $server = null, array $query = null, array $body = null, array $cookies = null, array $files = null)
{
$request = parent::fromGlobals($server, $query, $body, $cookies, $files);
list($base, $webroot) = static::getBase($request);
$sessionConfig = (array) Configure::read('Session') + ['defaults' => 'php', 'cookiePath' => $webroot];
$session = Session::create($sessionConfig);
$request = $request->withAttribute('base', $base)->withAttribute('webroot', $webroot)->withAttribute('session', $session);
if ($base) {
$request = static::updatePath($base, $request);
}
return $request;
}
示例5: getSession
/**
* Get instance of the session.
*
* @return \Cake\Network\Session
*/
public function getSession()
{
if (!empty($this->cake['session'])) {
return $this->cake['session'];
}
if (!empty($this->cake['request'])) {
$this->cake['session'] = $this->cake['request']->session();
return $this->cake['session'];
}
$config = (array) Configure::read('Session') + ['defaults' => 'php'];
$this->cake['session'] = Session::create($config);
return $this->cake['session'];
}
示例6: user
/**
* Get the current user.
*
* Will prefer the static user cache over sessions. The static user
* cache is primarily used for stateless authentication. For stateful authentication,
* cookies + sessions will be used.
*
* @param string $key field to retrieve. Leave null to get entire User record
* @return mixed User record. or null if no user is logged in.
* @link http://book.cakephp.org/2.0/en/core-libraries/components/authentication.html#accessing-the-logged-in-user
*/
public static function user($key = null)
{
if (!empty(static::$_user)) {
$user = static::$_user;
} elseif (static::$sessionKey && Session::check(static::$sessionKey)) {
$user = Session::read(static::$sessionKey);
} else {
return null;
}
if ($key === null) {
return $user;
}
return Hash::get($user, $key);
}
示例7: initialize
public function initialize(array $config)
{
parent::initialize($config);
// TODO: Change the autogenerated stub
$session = new Session();
$lang = $session->read('Config.language');
$fieldLanguage = 'vie';
switch ($lang) {
case 'ja_JP':
$fieldLanguage = 'jpn';
break;
case 'vi_VN':
$fieldLanguage = 'vie';
break;
case 'en_US':
$fieldLanguage = 'eng';
break;
}
$this->fieldLanguage = $fieldLanguage;
$curUser = $session->read('Core.Users');
if ($curUser && $curUser->group == GROUP_ADMIN) {
$this->cacheConfig = 'api_backend';
}
$this->jcApi = new JcApi(KEY_API, $this->fieldLanguage);
}
示例8: setUp
/**
* setUp method
*
* @return void
*/
public function setUp()
{
parent::setUp();
$this->View = new View();
$session = new Session();
$this->View->request = new Request(['session' => $session]);
$this->Session = new SessionHelper($this->View);
$session->write(array('test' => 'info', 'Flash' => array('flash' => array('type' => 'info', 'params' => array(), 'message' => 'This is a calling'), 'notification' => array('type' => 'info', 'params' => array('title' => 'Notice!', 'name' => 'Alert!', 'element' => 'session_helper'), 'message' => 'This is a test of the emergency broadcasting system'), 'classy' => array('type' => 'success', 'params' => array('class' => 'positive'), 'message' => 'Recorded'), 'incomplete' => ['message' => 'A thing happened']), 'Deeply' => array('nested' => array('key' => 'value'))));
}
示例9: setUp
/**
* setUp method
*
* @return void
*/
public function setUp()
{
parent::setUp();
$this->View = new View();
$session = new Session();
$this->View->request = new Request(['session' => $session]);
$this->Flash = new FlashHelper($this->View);
$session->write(['Flash' => ['flash' => ['key' => 'flash', 'message' => 'This is a calling', 'element' => 'Flash/default', 'params' => []], 'error' => ['key' => 'error', 'message' => 'This is error', 'element' => 'Flash/error', 'params' => []], 'custom1' => ['key' => 'custom1', 'message' => 'This is custom1', 'element' => 'Flash/warning', 'params' => []], 'custom2' => ['key' => 'custom2', 'message' => 'This is custom2', 'element' => 'Flash/default', 'params' => ['class' => 'foobar']], 'custom3' => ['key' => 'custom3', 'message' => 'This is <a href="#">custom3</a>', 'element' => 'Flash/default', 'params' => ['escape' => false]]]]);
}
示例10: login
public function login()
{
$this->viewBuilder()->layout('login');
//If a user is already logged in, redirect them to their profile.
if ($this->Auth->user()) {
$this->redirect($this->referer());
}
$session = new Session();
if ($this->request->is('post')) {
if (isset($this->request->data['referred'])) {
$session->write('Redirect.login', $this->referer());
}
$user = $this->Auth->identify();
if ($user) {
$this->Auth->setUser($user);
$this->_setCookie();
return $this->redirect($this->Auth->redirectUrl());
}
$this->Flash->error('Invalid username or password, try again');
}
}
示例11: translate
/**
* Used by the translation functions in basics.php
* Returns a translated string based on current language and translation files stored in locale folder
*
* @param string $singular String to translate
* @param string $plural Plural string (if any)
* @param string $domain Domain The domain of the translation. Domains are often used by plugin translations.
* If null, the default domain will be used.
* @param int $category Category The integer value of the category to use.
* @param int $count Count Count is used with $plural to choose the correct plural form.
* @param string $language Language to translate string to.
* If null it checks for language in session followed by Config.language configuration variable.
* @return string translated string.
* @throws \Cake\Error\Exception When '' is provided as a domain.
*/
public static function translate($singular, $plural = null, $domain = null, $category = self::LC_MESSAGES, $count = null, $language = null)
{
$_this = I18n::getInstance();
if (strpos($singular, "\r\n") !== false) {
$singular = str_replace("\r\n", "\n", $singular);
}
if ($plural !== null && strpos($plural, "\r\n") !== false) {
$plural = str_replace("\r\n", "\n", $plural);
}
if (is_numeric($category)) {
$_this->category = $_this->_categories[$category];
}
if (empty($language)) {
if (Session::started()) {
$language = Session::read('Config.language');
}
if (empty($language)) {
$language = Configure::read('Config.language');
}
}
if ($_this->_lang && $_this->_lang !== $language || !$_this->_lang) {
$lang = $_this->l10n->get($language);
$_this->_lang = $lang;
}
if ($domain === null) {
$domain = static::$defaultDomain;
}
if ($domain === '') {
throw new Exception('You cannot use "" as a domain.');
}
$_this->domain = $domain . '_' . $_this->l10n->lang;
if (!isset($_this->_domains[$domain][$_this->_lang])) {
$_this->_domains[$domain][$_this->_lang] = [];
$_this->_domains[$domain][$_this->_lang] = Cache::read($_this->domain, '_cake_core_');
}
if (!isset($_this->_domains[$domain][$_this->_lang][$_this->category])) {
$_this->_bindTextDomain($domain);
Cache::write($_this->domain, $_this->_domains[$domain][$_this->_lang], '_cake_core_');
}
if ($_this->category === 'LC_TIME') {
return $_this->_translateTime($singular, $domain);
}
if (!isset($count)) {
$plurals = 0;
} elseif (!empty($_this->_domains[$domain][$_this->_lang][$_this->category]["%plural-c"]) && $_this->_noLocale === false) {
$header = $_this->_domains[$domain][$_this->_lang][$_this->category]["%plural-c"];
$plurals = $_this->_pluralGuess($header, $count);
} else {
if ($count != 1) {
$plurals = 1;
} else {
$plurals = 0;
}
}
if (!empty($_this->_domains[$domain][$_this->_lang][$_this->category][$singular])) {
if (($trans = $_this->_domains[$domain][$_this->_lang][$_this->category][$singular]) || $plurals && ($trans = $_this->_domains[$domain][$_this->_lang][$_this->category][$plural])) {
if (is_array($trans)) {
if (isset($trans[$plurals])) {
$trans = $trans[$plurals];
} else {
trigger_error(sprintf('Missing plural form translation for "%s" in "%s" domain, "%s" locale. ' . ' Check your po file for correct plurals and valid Plural-Forms header.', $singular, $domain, $_this->_lang), E_USER_WARNING);
$trans = $trans[0];
}
}
if (strlen($trans)) {
return $trans;
}
}
}
if (!empty($plurals)) {
return $plural;
}
return $singular;
}
示例12: _getUserId
/**
* Gets current User's ID.
*
* @return int User ID, zero if not found
*/
protected function _getUserId()
{
$callable = $this->config('idCallable');
$id = 0;
if (is_string($callable)) {
$session = Session::create();
$id = $session->read($callable);
} elseif (is_callable($callable)) {
$id = $callable();
}
return (int) $id;
}
示例13: testBadEngine
/**
* Tests instantiating a missing engine
*
* @expectedException \InvalidArgumentException
* @expectedExceptionMessage The class "Derp" does not exist and cannot be used as a session engine
* @return void
*/
public function testBadEngine()
{
$session = new Session();
$session->engine('Derp');
}
示例14: redirectUrl
/**
* {@inheritDoc}
*/
public function redirectUrl($url = null)
{
if ($url === null) {
return $this->_session->read($this->_config['redirect']);
}
if ($url === false) {
$this->_session->delete($this->_config['redirect']);
return null;
}
$this->_session->write($this->_config['redirect'], $url);
}
示例15: getLoginUrl
/**
* provides facebook login URL
* used by webapp
*
* @param string $redirectUrl destination to be redirect to after calling the login URL
* @return string facebook login url
*/
public function getLoginUrl($redirectUrl = null)
{
$this->_session->write('Facebook.redirectUrl', $redirectUrl);
$facebookRedirectLoginHelper = $this->_getFacebookRedirectLoginHelper($redirectUrl);
return $facebookRedirectLoginHelper->getLoginUrl(['email', 'user_birthday']);
}