PHP获取年龄功能不工作笨

问题描述 投票:0回答:1

我使用的是用笨php5.6

public function getUserAge($uid=''){
    $today = date('Y-m-d');
    $res = $this->db->select("age(dob, '$today') as age")->from('users')->where(array('user_id' => $uid))->get()->row_array();

    return $res['age'];
}

但我得到的错误。

数据库错误发生错误号:1305

功能tblname.age不存在

SELECT年龄( 'DOB', '2019年2月11日')随着年龄的FROM users WHERE user_id = 53

文件名:模块/帐号/模型/ Account_model.php

行号:142

php mysql codeigniter
1个回答
0
投票

年龄不是MySQL的功能。

如果你想在mysql的年龄,你可以使用查询作为

SELECT YEAR(CURDATE()) - YEAR(dob) - 
        IF(STR_TO_DATE(CONCAT(YEAR(CURDATE()), '-', MONTH(dob), '-', DAY(dob)) ,'%Y-%c-%e') 
    > CURDATE(), 1, 0) 
AS age

FROM users WHERE user_id = 53

© www.soinside.com 2019 - 2024. All rights reserved.