セッション変数に魔法のゲッター/セッター クラスを使用していますが、通常のセッターとゲッターの違いがわかりません。
コード:
class session
{
public function __set($name, $value)
{
$_SESSION[$name] = $value;
}
public function __unset($name)
{
unset($_SESSION[$name]);
}
public function __get($name)
{
if(isset($_SESSION[$name]))
{
return $_SESSION[$name];
}
}
}
最初に気付いたのは$session->_unset('var_name')
、変数を削除するために呼び出す必要があることです。それについては「魔法のような」ことは何もありません。
第二に、これを使用しようとすると$session->some_var
機能しません。を使用してのみセッション変数を取得できます$_SESSION['some_var']
。
PHPのマニュアルを見ましたが、関数は私のものと同じように見えます。
私は何か間違ったことをしているのですか、それともこれらの関数について何か魔法はありませんか?