Php MySQLi更新查询中的自定义时区

Php MySQLi更新查询中的自定义时区,php,mysql,datetime,mysqli,Php,Mysql,Datetime,Mysqli,我是android开发者,正在使用一个API和PHP在我的android应用程序中使用。我不懂PHP语言。我有一个查询,我想在其中更新数据库的datetime字段。qu_time=Now()可以正常工作,但我想将时区设置为字段qu_time。我当前的查询如下 $results = mysqli_query($mysqli,"UPDATE tbl_quotes SET qu_status=1, qu_like=$randomnumberlike,qu_share=$randomnumbershar

我是android开发者,正在使用一个API和PHP在我的android应用程序中使用。我不懂PHP语言。我有一个查询,我想在其中更新数据库的datetime字段。qu_time=Now()可以正常工作,但我想将时区设置为字段qu_time。我当前的查询如下

$results = mysqli_query($mysqli,"UPDATE tbl_quotes SET qu_status=1, qu_like=$randomnumberlike,qu_share=$randomnumbershare,qu_favorite=0, qu_time=Now() where _quid=$x ORDER BY _quid ASC ");
function getDatetimeNow() {
    $tz_object = new DateTimeZone('Asia/Kolkata');
    //date_default_timezone_set('Brazil/East');

 $datetime = new DateTime();
    $datetime->setTimezone($tz_object);
    return $datetime->format('Y-m-d H:i:s');
    }
我有一个将时间转换为时区的函数,但我不知道如何使用它。该函数如下所示

$results = mysqli_query($mysqli,"UPDATE tbl_quotes SET qu_status=1, qu_like=$randomnumberlike,qu_share=$randomnumbershare,qu_favorite=0, qu_time=Now() where _quid=$x ORDER BY _quid ASC ");
function getDatetimeNow() {
    $tz_object = new DateTimeZone('Asia/Kolkata');
    //date_default_timezone_set('Brazil/East');

 $datetime = new DateTime();
    $datetime->setTimezone($tz_object);
    return $datetime->format('Y-m-d H:i:s');
    }
任何人都可以建议我如何在上面的查询中使用它,或者有任何其他方法用更新查询设置我的时区


感谢您在当前查询中使用的
Now()
,这是mysql函数。如果您想根据您的函数使用php,请使用下面的代码

    $qu_time = getDatetimeNow();
    $results = mysqli_query($mysqli,"UPDATE tbl_quotes SET qu_status=1, qu_like=$randomnumberlike,qu_share=$randomnumbershare,qu_favorite=0, qu_time='$qu_time' where _quid=$x ORDER BY _quid ASC ");

    function getDatetimeNow() {
        $tz_object = new DateTimeZone('Asia/Kolkata');
        //date_default_timezone_set('Brazil/East');

        $datetime = new DateTime();
        $datetime->setTimezone($tz_object);
        return $datetime->format('Y-m-d H:i:s');
    }
试试这个:

function getDatetimeNow($existed_time) {// pass your variable 
    $tz_object = new DateTimeZone('Asia/Kolkata');
    //date_default_timezone_set('Brazil/East');

    $datetime = $existed_time; // assign it to $datetime variable
    $datetime->setTimezone($tz_object); 
    return $datetime->format('Y-m-d H:i:s');
    }

无关:您需要知道,在SQL查询中使用字符串插值,就像这样<代码>其中_quid=$x。。。这是一种极其危险和完全不可接受的做法。