关于CI读取数据库内容的疑问
第一个:function test1()
{
$this->db->where("user_id" , 1);
$query = $this->db->get('users');
var_dump($this->db->last_query());
}
这样输出的是
"SELECT *FROM (`users`)WHERE `user_id` = 1"
第二个:
function test2($str ='$this->db->where("user_id" , 1)' )
{
$str;
$query = $this->db->get('users');
var_dump($this->db->last_query());
}
这输出的是:
SELECT *FROM (`users`);
这是为什么呢,
第二个为什么不可以,要如何实现function test2这种思路?
第一个函数 test1 里的 $this->db->where("user_id" , 1); 能够正常执行,就是给 sql 加了个条件 WHERE `user_id` = 1,而第二个函数 test2 参数里的 $str ='$this->db->where("user_id" , 1)' 只是给 $str 设置了一个默认值为 '$this->db->where("user_id" , 1)' ,这只是个字符串,而不是可执行的代码,所以结果就是你说的那样。 第二个函数 test2 参数里的 $str ='$this->db->where("user_id" , 1)' 只是给 $str 设置了一个默认值为 '$this->db->where("user_id" , 1)' ,这只是个字符串,而不是可执行的代码,这个要怎么样才可以让这个字符串成功可执行代码 qq494686707 发表于 2012-8-22 18:09 static/image/common/back.gif
第一个函数 test1 里的 $this->db->where("user_id" , 1); 能够正常执行,就是给 sql 加了个条件 WHERE `us ...
第二个函数 test2 参数里的 $str ='$this->db->where("user_id" , 1)' 只是给 $str 设置了一个默认值为 '$this->db->where("user_id" , 1)' ,这只是个字符串,而不是可执行的代码,这个要怎么样才可以让这个字符串成功可执行代码 去年明日 发表于 2012-8-23 09:59 static/image/common/back.gif
第二个函数 test2 参数里的 $str ='$this->db->where("user_id" , 1)' 只是给 $str 设置了一个默认值为 ' ...
也就是第一个函数 test1 那样写了 qq494686707 发表于 2012-8-23 10:05 static/image/common/back.gif
也就是第一个函数 test1 那样写了
如果要以参数的形式来实现这个功能又要怎么做 去年明日 发表于 2012-8-24 10:40 static/image/common/back.gif
如果要以参数的形式来实现这个功能又要怎么做
没那个必要呢,你那样做是很不规范的,参数用来接收值或对象的,而不是让参数去执行一个过程 qq494686707 发表于 2012-8-24 13:10 static/image/common/back.gif
没那个必要呢,你那样做是很不规范的,参数用来接收值或对象的,而不是让参数去执行一个过程 ...
谢谢
页:
[1]