[PHP-users 18009]Re: $_SESSIONへの代入解決! (初めまして&ご教授願います。)

Masayuki Tadano tadano @ d-product.co.jp
2003年 9月 21日 (日) 21:22:47 JST


ただの@食後休息中(っていつもか?) です。


"大原 美樹" <o-hara.miki @ pop-cute.net> wrote:

(中略)

> 私の経験では(と言ってもわずかですが)
> setcookieで連想配列に値を代入する際に「"」を付加するとエラーが出ました。
> ex)setcookie("save[id]", $id,…);   ←OK
>    setcookie("save["id"]", $id,…); ←NG

それは、parser の立場になって考えれば分かるでしょう。「"」が
出現したのならば、それに対応する「"」を探してますよね。とす
ると、

    setcookie("save["id"]", $id,…); ←NG
は、
    setcookie( +  "save[" + id + "]" + , $id,…); ←NG

と解釈され、ここで、id は何?ってなると思います。ところで、

    setcookie("save[id]", $id,…);

は OK とされていますが、save[id] は本当にこれでいいのでしょ
うか。意図されていることともしかして違っていたりしませんか。
# たとえば、save[$id]とか

    setcookie("save["id"]", $id,…);

のような場合は、「"」と「'」とを併用することでも解決できる
ことがありますが、その違いは把握しておくと良いと思いますし、
とても大事です。

> 関数によって違うのであればちょっとややこしいですね…(;^_^A アセアセ

それは無いです。

-- 
Masayuki Tadano <tadano @ d-product.co.jp>




PHP-users メーリングリストの案内