Ben .. internette bazı yazılar okudum, ama ben alamadım: |, siz böyle bir şey yapmak için nasıl, bana bir örnek verebilir: {[(1)] $_SESSION['name'] = 'value'; ve }. nasıl ZF ile böyle bir şey oluşturabilir?
Saygılarımızla,
Her şeyden önce, sayfanızın üstündeki bu koyun:
<?php
Zend_Session::start();
if(!Zend_Registry::isRegistered('session'))
{
$session = new Zend_Session_Namespace('YourSiteName');
Zend_Registry::set('session', $session);
}
?>
Oturumu değiştirmek için:
<?php
$session = Zend_Registry::get('session');
$session->user_name = $user_name;
?>
Oturumu okumak için:
<?php
$session = Zend_Registry::get('session');
echo 'Hello '.$session->user_name.' !';
?>
Veya geçerli oturum ad alanındaki tüm değerleri görmek için:
<?php
$session = Zend_Registry::get('session');
foreach ($session as $index => $value)
{
echo "session->$index = '$value';<br />";
}
?>
Zend Framework ile çalışırken, yerine, Zend_Session
a> sınıf kullanmak, $_SESSION
, doğrudan çalışmak, ama olmamalıdır.
Muhtemelen Basic Usage manuel sayfada soruya cevap bulacaksınız.
Örneğin, bir numberOfPageRequests
oturumda depolanır, bu gibi bir şey kullanabilirsiniz kullanmak için:
$defaultNamespace = new Zend_Session_Namespace('Default');
if (isset($defaultNamespace->numberOfPageRequests)) {
// this will increment for each page load.
$defaultNamespace->numberOfPageRequests++;
} else {
$defaultNamespace->numberOfPageRequests = 1; // first time
}
Bu biraz daha karmaşık görünüyor olabilir $_SESSION
, doğrudan, itiraf ediyorum ... ama bu size bir tutarlı, nesne yönelimli, arayüz verir çalışma - ki ^ ^ en azından bir şey var
Of course, you might need to start the session before that, using
Zend_Session::start();
If you have additionnal questions, more specific, don't hesitate to ask !
Bu tarafından (öğretici devletler gibi) yapabilirsiniz:
$defaultNamespace = new Zend_Session_Namespace('Default');
if (isset($defaultNamespace->name))
{
echo $defaultNamespace->name;
}
else
{
$defaultNamespace->name = "hi";
}
Öncelikle, kullandığınız Session nesnesi oluşturmanız gerekir:
$defaultNamespace = new Zend_Session_Namespace('Default');
Varsayılan yerine özel bir değer tanımlayarak, bu değişkenlerin hiçbiri varsayılan yerine benzersiz değerleri kullanmak sistemin diğer sistemlerden değişkenler veya diğer parçaları ile karıştırmak anlamına gelir.
Bundan sonra, her değişken normal bir sınıf değişkeni gibi erişilebilir
Herhangi bir değişken kullanılarak atanabilir
$defaultNamespace->variable_name = value;
Herhangi bir değer elde etmek için, sadece aynı değeri olsun;
$variable - $defaultNamespace->variable_name; // gets value
Pascal belirtildiği gibi, siz de aramak gerekir
Zend_Session::start();
tüm bu daha önce.
Bu konuda daha fazla bilgi edinmek için, kullanmak Basic Usage Examples.