使用MySql和PHP时获取记录集中最后一条记录的值

时间:2013-09-26 09:48:56

标签: php mysql pdo

使用PHP和MySql选择显示数据时,如何获取记录集中最后一行的值?在MySql或Php中是否有内置函数来执行此操作?

对于Eg(使用PDO):

select id from table limit 5;

Output:
1
2
3
4
5 -> How can I get this value to pass to a function, all things being the same

 while( $row = $stmt->fetch() ) {
   echo $row['id'];

}
 // The value of id of the last row i.e 5 needs to go into a function
       functionName(id value of last row goes here)

如何做到这一点?

6 个答案:

答案 0 :(得分:2)

   $last_id = 0
    while( $row = $stmt->fetch() ) {
       echo $row['id'];
       $last_id = $row['id'];
    }
     functionName($last_id)

答案 1 :(得分:0)

您可以使用PHP的end($array)来获取数组中的最后一项

答案 2 :(得分:0)

尝试MAX()

SELECT max(id) FROM table

答案 3 :(得分:0)

试试这个......

select id from table ORDER BY id DESC limit 5;

这样您将获得最近5条记录。

答案 4 :(得分:0)

我在PHP方面不是那么好,但仍然......

我认为fetch(PDO::FETCH_ORI_LAST)最适合您的要求。

示例:

$stmt = $conn->query("SELECT firstnme, lastname FROM employee");
$row = $stmt->fetch(PDO::FETCH_ORI_LAST);
print "Name: <p>{$row[0] $row[1]}</p>";

请参阅
Fetching rows from result sets in PHP (PDO)

答案 5 :(得分:0)

您可以订购您的选择降序并限制1

选择ID 从表 按ID DESC排序 限制1

如果你想要所有行,并且只是在php中获取最后一行,那么就像@Shamil所说,end()效果很好