/
var
/
www
/
vhosts
/
nabawater
/
vendor
/
yiisoft
/
yii2
/
web
/
/var/www/vhosts/nabawater/vendor/yiisoft/yii2/web
mkdir
upload
Name
Size
Mode
Actions
migrations/
-
0755
rm
Application.php
5836
0644
edit
dl
rm
AssetBundle.php
8602
0644
edit
dl
rm
AssetConverter.php
4599
0644
edit
dl
rm
AssetConverterInterface.php
698
0644
edit
dl
rm
AssetManager.php
25586
0644
edit
dl
rm
BadRequestHttpException.php
1077
0644
edit
dl
rm
CacheSession.php
3673
0644
edit
dl
rm
CompositeUrlRule.php
4482
0644
edit
dl
rm
ConflictHttpException.php
814
0644
edit
dl
rm
Controller.php
9739
0644
edit
dl
rm
Cookie.php
2002
0644
edit
dl
rm
CookieCollection.php
8094
0644
edit
dl
rm
DbSession.php
7628
0644
edit
dl
rm
ErrorAction.php
6092
0644
edit
dl
rm
ErrorHandler.php
19141
0644
edit
dl
rm
ForbiddenHttpException.php
1126
0644
edit
dl
rm
GoneHttpException.php
1073
0644
edit
dl
rm
GroupUrlRule.php
4696
0644
edit
dl
rm
HeaderCollection.php
7236
0644
edit
dl
rm
HeadersAlreadySentException.php
700
0644
edit
dl
rm
HtmlResponseFormatter.php
1092
0644
edit
dl
rm
HttpException.php
1760
0644
edit
dl
rm
IdentityInterface.php
3661
0644
edit
dl
rm
JqueryAsset.php
459
0644
edit
dl
rm
JsExpression.php
1253
0644
edit
dl
rm
JsonParser.php
1731
0644
edit
dl
rm
JsonResponseFormatter.php
4677
0644
edit
dl
rm
Link.php
2078
0644
edit
dl
rm
Linkable.php
1109
0644
edit
dl
rm
MethodNotAllowedHttpException.php
833
0644
edit
dl
rm
MultiFieldSession.php
4614
0644
edit
dl
rm
MultipartFormDataParser.php
12271
0644
edit
dl
rm
NotAcceptableHttpException.php
1063
0644
edit
dl
rm
NotFoundHttpException.php
808
0644
edit
dl
rm
RangeNotSatisfiableHttpException.php
1212
0644
edit
dl
rm
Request.php
65615
0644
edit
dl
rm
RequestParserInterface.php
669
0644
edit
dl
rm
Response.php
41354
0644
edit
dl
rm
ResponseFormatterInterface.php
543
0644
edit
dl
rm
ServerErrorHttpException.php
827
0644
edit
dl
rm
Session.php
34578
0644
edit
dl
rm
SessionIterator.php
1978
0644
edit
dl
rm
TooManyRequestsHttpException.php
1019
0644
edit
dl
rm
UnauthorizedHttpException.php
1153
0644
edit
dl
rm
UnprocessableEntityHttpException.php
1120
0644
edit
dl
rm
UnsupportedMediaTypeHttpException.php
1094
0644
edit
dl
rm
UploadedFile.php
8836
0644
edit
dl
rm
UrlManager.php
25872
0644
edit
dl
rm
UrlNormalizer.php
5103
0644
edit
dl
rm
UrlNormalizerRedirectException.php
1758
0644
edit
dl
rm
UrlRule.php
21707
0644
edit
dl
rm
UrlRuleInterface.php
1223
0644
edit
dl
rm
User.php
33110
0644
edit
dl
rm
UserEvent.php
1229
0644
edit
dl
rm
View.php
23745
0644
edit
dl
rm
ViewAction.php
4718
0644
edit
dl
rm
XmlResponseFormatter.php
5667
0644
edit
dl
rm
YiiAsset.php
504
0644
edit
dl
rm
Edit:
/var/www/vhosts/nabawater/vendor/yiisoft/yii2/web/MultiFieldSession.php
(4614B)
<?php /** * @link http://www.yiiframework.com/ * @copyright Copyright (c) 2008 Yii Software LLC * @license http://www.yiiframework.com/license/ */ namespace yii\web; /** * MultiFieldSession is the base class for session storage implementations with multi-field data storage support. * * With multi-field data storage, session data can be split between several fields in the storage record. * Using such a storage allows saving particular session data into separated field, which then can be used * to manipulate sessions in the way plain PHP does not allow. * * For example the ID of the authenticated user can be saved as separated column in the MySQL 'session' table, * which allows to query all active sessions for a particular user or terminate them at will. * * Customizing of the session writing is performed via [[writeCallback]], reading via [[readCallback]]. * * While extending this class you should use [[composeFields()]] method - while writing the session data into the storage and * [[extractData()]] - while reading session data from the storage. * * @property bool $useCustomStorage Whether to use custom storage. This property is read-only. * * @author Paul Klimov <klimov.paul@gmail.com> * @since 2.0.6 */ abstract class MultiFieldSession extends Session { /** * @var callable a callback that will be called during session data reading. * The signature of the callback should be as follows: * * ``` * function ($fields) * ``` * * where `$fields` is the storage field set for read session and `$session` is this session instance. * If callback returns an array, it will be merged into the session data. * * For example: * * ```php * function ($fields) { * return [ * 'expireDate' => Yii::$app->formatter->asDate($fields['expire']), * ]; * } * ``` */ public $readCallback; /** * @var callable a callback that will be called during session data writing. * The signature of the callback should be as follows: * * ``` * function ($session) * ``` * * where `$session` is this session instance, this variable can be used to retrieve session data. * Callback should return the actual fields set, which should be saved into the session storage. * * For example: * * ```php * function ($session) { * return [ * 'user_id' => Yii::$app->user->id, * 'ip' => $_SERVER['REMOTE_ADDR'], * 'is_trusted' => $session->get('is_trusted', false), * ]; * } * ``` */ public $writeCallback; /** * Returns a value indicating whether to use custom session storage. * This method overrides the parent implementation and always returns true. * @return bool whether to use custom storage. */ public function getUseCustomStorage() { return true; } /** * Composes storage field set for session writing. * @param string $id session id * @param string $data session data * @return array storage fields */ protected function composeFields($id, $data) { $fields = [ 'data' => $data, ]; if ($this->writeCallback !== null) { $fields = array_merge( $fields, call_user_func($this->writeCallback, $this) ); if (!is_string($fields['data'])) { $_SESSION = $fields['data']; $fields['data'] = session_encode(); } } // ensure 'id' and 'expire' are never affected by [[writeCallback]] $fields = array_merge($fields, [ 'id' => $id, 'expire' => time() + $this->getTimeout(), ]); return $fields; } /** * Extracts session data from storage field set. * @param array $fields storage fields. * @return string session data. */ protected function extractData($fields) { if ($this->readCallback !== null) { if (!isset($fields['data'])) { $fields['data'] = ''; } $extraData = call_user_func($this->readCallback, $fields); if (!empty($extraData)) { session_decode($fields['data']); $_SESSION = array_merge((array) $_SESSION, (array) $extraData); return session_encode(); } return $fields['data']; } return isset($fields['data']) ? $fields['data'] : ''; } }
Save
cmd:
run