私はCountry-> Gov-> Branchというクラスを持っています。それらの各々は、この順序でもう一方に配列を返します:国はGovを与え、それをgovとマージし、govはブランチを与え、ブランチとマージします。ブランチ配列はUserクラスの属性で、Userを使用して$_session
にロードすると、配列マージを使用して分岐配列をマージして簡単に使用できるようになります(配列をループする必要はありません) 。
Array ([userid] => 1
[login] => [email protected]
[name] => Mohamed Talaat
[group] => 0
[picture] => mac
[Branchbranchid] => 1
[Branchbranchname] => Head Office
[Branchaddress] => xxxxxx st. , xxxx
[Branchgovid] => 2
[Govgovid] => 2
[Govgovcode] => 03
[Govgovname] => Alexandria
[Govcountryid] => 1
[Countrycountryid] => 1
[Countrycountrycode] => 20
[Countrycountryname] => Egypt)
を次のようにprint_r($_SESSION);
の結果だった私はHorrayを言ったが、幸せな気持ちが、私は以下の方法でそれを呼び出したとき、私はエラーを取得永遠に続く `tを。
echo $_SESSION['Branchbranchid'];
お知らせ:未定義のインデックス:DでのBranchbranchid:ライン7 の\ xamppの\ htdocsに\オフィス\のhome.phpと何も エコーされていない、私は前のページの最初の先頭にsession_start();
を持っています任意のコードを、私はこの問題は、キー[Branchbranchid]から始まるマージされた部分で起こっ気づくので、私はecho $_session['any element'];
echo $_SESSION['name'];
のように、このキー(
[Branc前に行う場合hbranchid])、コードは正常に動作します。私は別の配列にキーで値を追加することで回りを回そうとしましたが、同じ結果が得られ、同じ通知が現れ、何もエコーされません。インデックス付き配列に値をプッシュしても正常に動作しますが、キーがなくても失われたケースなので、キーに問題があると思います。
理由と方法この問題を回避または解決するには
$_SESSION
とあなたが 'にsession_start()を追加する必要がどのような方法でセッションを使用する。あなたはそれをあなたがこれを使用している –を使用したいの上に、ページの最上部に'同じファイルか他のPHPファイルですか? –
'$ _SESSION'!= '$ _session' –