作者foxzgerald (O⊥M)
看板PHP
标题Re: [请益] submit後,乱数值跑掉
时间Tue Nov 21 02:03:16 2006
得注意一下 ' 和 " 之间的差异;被 ' 框起来的字串不会进行脱序(escape),
也不会替代以 $标示的变数。
如果你要输出 $i 的内容後换行,那麽得用 "\n$i" .. 而不能用 '\n$i'。
前者会在印出$i的内容後输出符号;後者则直接输出 $i\n
就参考一下我标色的地方吧 :)
※ 引述《saininniang (sob)》之铭言:
: <?
: session_start();
: if(!isset($_SESSION['rand_value[10]']))
^^^^^^^^^^^^^^^^^^^^^^^^^^^
这地方似乎跟你想做的事情不一样:
(1). 单引号的意义是将
'rand_value[10]' 当成一整个字串。
(2). 如果你要用二维阵列,那应该以 $_SESSION[
'rand_value'][10] 的形式。
(3). 侦测二维阵列,仍只需检测 $_SESSION[
'rand_value'] 是否已存在即可
: {
: for ($i=0;$i<10;$i++) //write
: {
: $_SESSION['rand_value[$i]'] = rand(1,100);
这个地方,同第二点所提。你这写法的意义是将 rand(1,100) 的结果
assign 给 $_SESSION[
'rand_value[$i]'] 十次。
若要让 $i 具变数的特性,应用双引号,例: $_SESSION[
"rand_value[$i]"]
或者,以字串连结运算子『.』连结,如: $_SESSION[
'rand_value['.
$i.
']']
但前述的例子
并非合法的二维阵列宣告方式,
合法的宣告方式应为 $_SESSION[
'rand_value'][
$i] ..
如此才能产生 $_SESSION[
'rand_value'][0] 至 [9] 的二维阵列
: echo $_SESSION['rand_value[$i]'] .", ";
: }
: }
: ?>
: 我换把阵列存进session
: 可是这样session还是一直变动
: 好怪喔@@
: session不是存第一次就不会变了吗?
--
「640K ought to be enough for anybody.!」
- Bill Gates -
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.119.199.121
1F:推 saininniang:感谢.....我研究看看.....基础太差@@ 11/21 02:04
2F:推 foxzgerald:不会啦,就大家讨论一下 :) 11/21 02:09
※ 编辑: foxzgerald 来自: 140.119.199.121 (11/21 02:12)
3F:推 foxzgerald:BTW.用"rand_value" 也可以.不一定要用 'rand_value':) 11/21 02:16