助けが必要です。以下のコードは私のローカルホスト、php5.3+では正常に動作しますが、サーバーでは正常に動作しません。5.2
$_SESSION['myinv_id'] = $setinvid;
$_SESSION['prod_name'][$i] = $prod_name;
$_SESSION['qty'][$i] = $clean_qty;
$_SESSION['price'][$i] = $clean_price;
$_SESSION['total'][$i] = $clean_total;
$_SESSION['desc'][$i] = $desc;
var_dump を実行したとき
初めてコンテンツが追加されたとき、私はこれらを持っていました。
array(5) {
["prod_name"]=> array(1) {[0]=> string(4) "SDFD" }
["qty"]=> array(1) {[0]=> string(2) "43"}
["price"]=> array(1) { [0]=> string(2) "43" }
["total"]=> array(1) { [0]=> string(4) "1849" }
["desc"]=> array(1) { [0]=> string(6) "dsfsdf" } }
正常に動作します....配列が返されますが、2番目の値を追加しようとすると...これらのエラーが発生します... Fatal Error [] not expected for strings..var_dumpを実行したとき... iこれらがあった...これらの場合、 ['prod_name'] & ['desc'] は必然的に配列から文字列に変更され、配列値をステークにプッシュすることはできません。
array(5) {
**["prod_name"]=> &string(5) "dddsd"**
["qty"]=> &array(2) {
[0]=> string(2) "43"
[2]=> string(2) "45" }
["price"]=> &array(2) {
[0]=> string(2) "43"
[2]=> string(1) "3" }
["total"]=> &array(2) {
[0]=> string(4) "1849"
[2]=> string(3) "135" }
**["desc"]=> &string(7) "dsddadd"** }
問題の原因を教えてください。使用する前に、このセッション変数を空の配列として宣言しようとしましたが、役に立ちませんでした。