developerm 发表于 2016-1-4 17:26:28

会提示:
Severity: 4096

Message: Object of class stdClass could not be converted to string

Filename: database/DB_driver.php

Line Number: 1398

Closer 发表于 2016-1-4 17:33:00

本帖最后由 Closer 于 2016-1-4 17:34 编辑


因為你輸出的是物件
呼叫他的時候要選擇你要哪個

$query = $this->db->query('select uuid() as id');
$row = $query->row_array(); // 若是物件則 $query->row()

echo '<pre>';
print_r($row['id']); // 若是物件則 $row->id
echo '</pre>';

developerm 发表于 2016-1-4 17:36:53

Closer 发表于 2016-1-4 17:33
因為你輸出的是物件
呼叫他的時候要選擇你要哪個

非常感谢,兄弟。确实是因为没有明确我要选择哪个,添加as id即可调用返回的值。

developerm 发表于 2016-1-4 17:39:33

Closer 发表于 2016-1-4 17:33
因為你輸出的是物件
呼叫他的時候要選擇你要哪個

您所说的物件是指表中的具体字段吗?

Closer 发表于 2016-1-4 17:42:03

本帖最后由 Closer 于 2016-1-4 17:43 编辑

developerm 发表于 2016-1-4 17:36
非常感谢,兄弟。确实是因为没有明确我要选择哪个,添加as id即可调用返回的值。 ...
這就是兩回事了
我說沒有選擇哪個是指你呼叫 $row = $query->row(); 之後
應該是直接 echo $row; 吧
他需要 echo $row->id;

as id 只是重新定義名稱
不然你呼叫的時候得 echo $row->uuid();
應該會報錯,所以我才另取名為 id

 

developerm 发表于 2016-1-4 17:55:28

Closer 发表于 2016-1-4 17:42
這就是兩回事了
我說沒有選擇哪個是指你呼叫 $row = $query->row(); 之後
應該是直接 echo $row; 吧


恩,学习了。感谢!

developerm 发表于 2016-1-4 17:57:36

Closer 发表于 2016-1-4 17:42
這就是兩回事了
我說沒有選擇哪個是指你呼叫 $row = $query->row(); 之後
應該是直接 echo $row; 吧

$row = $query->row();      $uuid = $row->uuid;


$row = $query->row_array();      $uuid = $row['uuid'];
都可以

Closer 发表于 2016-1-4 18:01:06

developerm 发表于 2016-1-4 17:57


都可以

哈哈,那也許是我誤會了
因為直接 print_r() 出來的陣列 key 值是 uuid()
页: 1 [2]
查看完整版本: 求助,新手在使用ci操作数据库时使用数据库中的函件语法