jQuery数据表MySQL日期到PHP日期

jQuery数据表MySQL日期到PHP日期,php,jquery,mysql,date,datatables,Php,Jquery,Mysql,Date,Datatables,我使用datatables服务器端处理来检索表的所有值。其中一列以MySQL日期格式呈现用户的注册日期。可以在显示时将其转换为PHP日期格式 $('#data').dataTable( { "bProcessing": true, "bServerSide": true, "sAjaxSource": "userlist.php", } ); 谢谢 工作解决方案: 将此添加到服务器端,但没有效果 while ($aRow = mysql_fetc

我使用datatables服务器端处理来检索表的所有值。其中一列以MySQL日期格式呈现用户的注册日期。可以在显示时将其转换为PHP日期格式

$('#data').dataTable( {
        "bProcessing": true,
        "bServerSide": true,
        "sAjaxSource": "userlist.php",
} );
谢谢

工作解决方案:

将此添加到服务器端,但没有效果

while ($aRow = mysql_fetch_array($rResult)) {
$row = array();
for ($i = 0; $i < count($aColumns); $i++) {
    if ($aColumns[$i] == "version") {
        /* Special output formatting for 'version' column */
        $row[] = ($aRow[$aColumns[$i]] == "0") ? '-' : $aRow[$aColumns[$i]];
    } elseif ($aColumns[$i] == "date") {
        /* Special output formatting for 'date' column */
        $date = new DateTime($aRow["date"]);
        $timestamp = $date->getTimestamp();
        $row[] = date("d-m-Y", $timestamp);
    } elseif ($aColumns[$i] != ' ') {
        /* General output */
        $row[] = $aRow[$aColumns[$i]];
    } 
}
$output['aaData'][] = $row;
while($aRow=mysql\u fetch\u数组($rResult)){
$row=array();
对于($i=0;$igetTimestamp();
$row[]=日期(“d-m-Y”,时间戳为$timestamp);
}elseif($aColumns[$i]!=''){
/*一般输出*/
$row[]=$aRow[$aColumns[$i]];
} 
}
$output['aaData'][]=$row;
}


我的一个mysql列的名称为“date”。

userlist.php
中,只需使用php
date('d-m-Y',$timestamp)
或任何您希望的格式来重新格式化日期,然后再从脚本发送输出

对评论的答复:

此代码未经测试,但原则如下:

SQL表中会有一个日期列,比如说它叫做“日期”。因此:

在脚本底部的“输出”部分,您可以看到:

if ( $aColumns[$i] == "version" )
{
    /* Special output formatting for 'version' column */
    $row[] = ($aRow[ $aColumns[$i] ]=="0") ? '-' : $aRow[ $aColumns[$i] ];
}
/* insert this date formatting statement here */
elseif ( $aColumns[$i] == "date" ) {
    /* Special output formatting for 'date' column */
    $date = new DateTime($aRow["date"]);
    $timestamp = $date->getTimestamp();
    $row[] = date("d-m-Y", $timestamp);
}

如果需要对日期列进行排序,则可能需要使用日期排序插件,因为datatables不为所有日期格式提供默认排序。

userlist.php
中使用php
date('d-m-Y',$timestamp)
或其他任何选项,以便在发送脚本输出之前根据需要重新格式化日期

对评论的答复:

此代码未经测试,但原则如下:

SQL表中会有一个日期列,比如说它叫做“日期”。因此:

在脚本底部的“输出”部分,您可以看到:

if ( $aColumns[$i] == "version" )
{
    /* Special output formatting for 'version' column */
    $row[] = ($aRow[ $aColumns[$i] ]=="0") ? '-' : $aRow[ $aColumns[$i] ];
}
/* insert this date formatting statement here */
elseif ( $aColumns[$i] == "date" ) {
    /* Special output formatting for 'date' column */
    $date = new DateTime($aRow["date"]);
    $timestamp = $date->getTimestamp();
    $row[] = date("d-m-Y", $timestamp);
}

如果需要对日期列进行排序,可能需要使用日期排序插件,因为datatables不提供所有日期格式的默认排序。

什么是“PHP日期格式”?我假设“MySQL日期格式”的意思是“YYYY-MM-DD”,我的意思是将YYYY-MM-DD转换为DD-MM-YY等,顺序为
if-else
语句-最后两个应该互换。您所说的“PHP日期格式”是什么意思?我假设“MySQL日期格式”的意思是“YYYY-MM-DD”,我的意思是将YYYY-MM-DD转换为DD-MM-YY等,顺序为
if-else
语句-最后两个应该互换。在服务器端userlist.php中,我应该将其包含在哪里。示例代码:@Ajay:我已经为示例脚本添加了一个如何执行此操作的建议。我已经将代码添加到服务器端,但在输出中没有任何效果。检查我的编辑。@Ajay:在使用“常规输出”elseif之前,您需要添加我在编辑的帖子中显示的语句。您能帮我做一下吗?在服务器端userlist.php中,我应该将它包括在哪里。示例代码:@Ajay:我已经为示例脚本添加了一个如何执行此操作的建议。我已经将代码添加到服务器端,但在输出中没有任何效果。检查我的编辑。@Ajay:在使用“常规输出”elseif之前,您需要添加我在编辑的帖子中显示的语句。您能帮我吗-