第一:在双引号引用变量就是这种方法:
echo "fruits[".$key."] = ". $val ."\n"; 中[".$key."];
//相当于
echo "fruits[$key] = $val\n"; 中[$key];
//相当于
echo "fruits[{$key}] = {$val}\n"; 中[{$key}];

解决方案 »

  1.   

    第二:
    $numbers =range(1,20);
    $rand((float)microtime()*1000000);
    shuffle($numbers);
    foreach ($numbers as $number)
    {
    echo "$number";
    }首先,这个代码是错的,在第三行需要在$rand后面加个赋值运算符。$rand=((float)microtime()*1000000);的意思是返回当前时间的时间截和微妙数,然后把返回值转换为浮点数,然后乘以1000000,这个值必然是整数,返回整数后赋值给$rand,根据时间的计算数值,所以可以叫唯一值。
      

  2.   

    第一个有问题...应该是这样吧
    <?php
    $fruits = array("lemon","orange","banana","apple");
    sort($fruits); //排序
    foreach ($fruits as $key =>$val) { //偱环处理数组

    echo "fruits[".$key."] = ". $val ."\n"; //输出, . 是字串连接用的
    }
    ?> 
      

  3.   

    echo "fruits[".$key."] = ". $val ."\n"; 中[".$key."] 为什么带.和引号? echo "fruist[$key]=$val\n";这样写比较好 另外在echo时,比.好$rand((float)microtime()*1000000); 是干啥用的?
    给随机数发生器播种 已经淘汰的做法 PHP5已经不需要这行了
    这段代码是取随机数PHP4写法 
    microtime()会返回个字符串 强制类型转换FLOAT 
      

  4.   

    echo "fruits[".$key."] = ". $val ."\n"; 中[".$key."] 为什么带.和引号?
    为了达到这样的显示效果:
    fruits[0] = lemon
    fruits[1] = orange
    fruits[2] = banana
    fruits[3] = apple另,sort($fruits as $key =>$val) 是错误的
    应为 foreach($fruits as $key =>$val)