有两个小函数有一点不懂
1.
PHP code<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->function GetFileList($model,$slevel) { $arr = array(); $sql="select * from boxfile where model = '$model' and slevel > $slevel order by slevel asc"; //die($sql); $rs = $this->db->Execute($sql); if($rs==true) { while (!$rs->EOF) { $arr[]=$rs->fields; $rs->MoveNext(); } } return $arr; }
之前都还好 就是while那里的EOF有点懵 另外 还有fields是什么意思 将字段当成数组的值写入么?
2.
PHP code<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--> function AddGetParams($arr) { $str = ''; foreach($arr as $k => $v) $str .= $k .':'. $v .'|'; $str .= 'ip:'. $_SERVER['REMOTE_ADDR']; $sql = "insert into test(name) values('$str')"; $this->db->Execute($sql); }
其中foreach里面不明白 $k=>$v 是一个形式是么? 下面的$str .= $k .':'. $v .'|';什么意思。我知道是将ip插入到数据库中 但是不明白其过程
希望朋友帮忙讲一下 谢谢
------解决方案--------------------EOF是测试是否到了末尾,如果是的话就为True,如果不是的话就False,你把EOF换成False来想的话,
!False 就成了 True,还没到末尾的时候就会这样,导致!运算成True达成循环条件继续循环执行
----------
$k=>$v 方面$k是取了数组的键名,$v就取了数组的键值
你要看看关于foreach遍历数组的方法
------解决方案--------------------$k=>$v 是一个形式是么? 下面的$str .= $k .':'. $v .'|';什么意思
---------------------------
$k=>$v 是hash
".=" 是累加字符串"."是相当于"+"
!$rs->EOF 当结果不等于空的时候,循环读取数据
------解决方案--------------------一楼说的很详细
------解决方案--------------------一楼说的很详细
Déclaration:Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn