如何在 php 中将时间转换为字符串
How to convert time to string in php
我有一个 php foreach 循环,它从不同的数据库中获取数据并将其插入到我的其他数据库中 table。我的问题是当我 运行 此代码时,我的时间列中出现错误。可能是因为我必须将时间转换为字符串,因为我的 table 除了时间列中的文本。
我的错误代码:
SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error at or near "22"
SELECT 897196,2018-02-26 22:20:09,1...
^ - error
所以,我将字符串从时间变量中放入,但仍然是同样的错误。老实说,虽然我不确定这个问题。
我的Php代码
foreach($results as $n){
$id = $n['ID'];
$time = (string)$n['Time']=='0000-00-00 00:00:00'?null:(string)$n['Time'];
$email= $n['email'];
$marks= $n['marks'];
$rank= $n['rank'];
$psql->get_db()->beginTransaction();
$stmt = $psql->pdo_prepared("INSERT INTO student(
id, time,email, marks, rank) SELECT $id,$time, $email,$marks,$rank FROM student WHERE NOT EXISTS (SELECT 1 FROM student WHERE id = $id AND time = $time AND email= $email AND marks = $marks AND rank= $rank)");
$psql->get_db()->commit();
}
提前致谢;
请更改此行
$time = (string)$n['Time']=='0000-00-00 00:00:00'?null:(string)$n['Time'];
至此
$time = (string)$n['Time']=='0000-00-00 00:00:00' ? null : '"'.(string)$n['Time'] .'"';
我有一个 php foreach 循环,它从不同的数据库中获取数据并将其插入到我的其他数据库中 table。我的问题是当我 运行 此代码时,我的时间列中出现错误。可能是因为我必须将时间转换为字符串,因为我的 table 除了时间列中的文本。
我的错误代码:
SQLSTATE[42601]: Syntax error: 7 ERROR: syntax error at or near "22"
SELECT 897196,2018-02-26 22:20:09,1...
^ - error
所以,我将字符串从时间变量中放入,但仍然是同样的错误。老实说,虽然我不确定这个问题。
我的Php代码
foreach($results as $n){
$id = $n['ID'];
$time = (string)$n['Time']=='0000-00-00 00:00:00'?null:(string)$n['Time'];
$email= $n['email'];
$marks= $n['marks'];
$rank= $n['rank'];
$psql->get_db()->beginTransaction();
$stmt = $psql->pdo_prepared("INSERT INTO student(
id, time,email, marks, rank) SELECT $id,$time, $email,$marks,$rank FROM student WHERE NOT EXISTS (SELECT 1 FROM student WHERE id = $id AND time = $time AND email= $email AND marks = $marks AND rank= $rank)");
$psql->get_db()->commit();
}
提前致谢;
请更改此行
$time = (string)$n['Time']=='0000-00-00 00:00:00'?null:(string)$n['Time'];
至此
$time = (string)$n['Time']=='0000-00-00 00:00:00' ? null : '"'.(string)$n['Time'] .'"';