PHP回声空白日期时间字段

时间:2016-10-01 20:22:37

标签: php mysql

这是我的困境。我已尝试引用http://php.net/manual/en/datetime.format.php

但这没有帮助我,或者我没有正确设置我的代码。

这是我的代码。

$query =  "SELECT id,f_name, l_name, phone_1, phone_2, car_name, email, zipcode, ref_name, dateadded ";
$query .= "FROM customers JOIN carriers ON customers.carrier = carriers.car_id ";
$query .= "JOIN referrals ON customers.referral = referrals.ref_id";        

$select_customers = mysqli_query($connection, $query);

while($row = mysqli_fetch_assoc($select_customers)) {
$customer_id = $row['id'];    
$c_fname     = $row['f_name'];
$c_lname     = $row['l_name'];
$c_email     = $row['email'];
$c_phone1    = $row['phone_1'];
$c_phone2    = $row['phone_2'];
$car_id      = $row['car_id'];    
$c_carrier   = $row['car_name'];
$c_zip       = $row['zipcode'];
$ref_id      = $row['ref_id'];
$c_ref       = $row['ref_name'];
$c_added     = $row['dateadded'];

echo "<tr>";
echo "<td>{$c_fname}</td>";
echo "<td>{$c_lname}</td>";
echo "<td>{$c_email}</td>";
echo "<td>{$c_phone1}</td>";
echo "<td>{$c_phone2}</td>";
echo "<td>{$c_carrier}</td>";
echo "<td>{$c_zip}</td>";
echo "<td>{$c_ref}</td>";   
echo "<td>". date_format($c_added, 'd/m/y') ."</td>";
echo "<td><a class='btn btn-danger' href='customers.php?source=edit_customer&id={$customer_id}'>Edit</a></td>";
}    

它将回显一个空白字段。 'dateadded'的col被设置为 datetime value 的'2016-09-28 10:40:44'。我的代码的更正表示赞赏。感谢。

5 个答案:

答案 0 :(得分:1)

有很多方法可以做到这一点,另一个方法是先前的答案:

echo "<td>". date_format(new DateTime($c_added), 'd/m/y') ."</td>";

答案 1 :(得分:1)

请尝试替换:

echo "<td>". date_format($c_added, 'd/m/y') ."</td>";
代码中的

用:

echo '<td>' . gmdate('d/m/y', (int)$c_added['0']) . '</td>';

或者

echo '<td>' . date('d/m/y',strtotime($c_added)) . '</td>';

请注意:使用"<td>"速度较慢,使用'<td>'更快

答案 2 :(得分:0)

date_format接受为第一个参数

  

date_create()

返回的DateTime对象

你的$c_added绝对不是这样的对象。我建议你使用普通的date函数:

echo "<td>". date('d/m/y', strtotime($c_added)) ."</td>";

答案 3 :(得分:0)

date_format函数格式化DateTime数据类型,而$ c_added是String。

答案 4 :(得分:0)

RTM。 date_format不接受字符串作为参数。

你应该使用别的东西,比如

date("d/m/Y", strtotime('2016-09-28 10:40:44'));

返回“28-09-2016”