var $RankDic = Array();$dicfile = dirname(__FILE__)."/data.dat";
     $fp = fopen($dicfile,'r');
     while($line = fgets($fp,64)){
     $ws = explode(' ',$line);
     $this->RankDic[strlen($ws[0])][$ws[0]] = $ws[1]; 
/*这里RankDic[strlen($ws[0])][$ws[0]]表示什么意思,如果RankDic是一个二维数组的话 RankDic[strlen($ws[0])]可以理解,但是RankDic[strlen($ws[0])][$ws[0]]就不知道是什么意思了,求高人指点一二。*/
     }
fclose($fp);
$slen = strlen($okWord);$this->RankDic[$slen][$okWord];这句是什么意思,取得的值是什么?dat文件里的数据格式如下
少年 4356
神奇 1381
…………
即前面一个词,然后一个空格,后面跟一个数字
我的理解是这样的:
以dat文件第一行为例
$ws = explode(' ',$line);这一句执行的结果是$ws[0] = '少年'; $ws[1] = 4356;$this->RankDic[strlen($ws[0])][$ws[0]] = $ws[1]; 即
$this->RankDic[4)][少年] = 4356;这一句无法理解。小菜鸟不懂php,有说错的不要笑,还望高人指点一下。