Конечно! Использование:
var JSONWithDate = {
"Date": new Date(<?php echo date("Y, ").(date(n) - 1).date(", j") ?>)
};
РЕДАКТИРОВАТЬ: Добавить пример кода.
Вот мой код, и он работает.
<html>
<body>
<script>
var J = { "Date": new Date(<?php echo date("Y, ").(date("n") - 1).date(", j") ?>) }
document.write(J["Date"]);
</script>
</body>
</html>
РЕДАКТИРОВАТЬ 2: Сделайте это больше как JSON.
Вот мой PHP-код.
<html>
<body>
<script>
<?php
function GetJSONDate($FieldName = "Date") {
return "\"$FieldName\": new Date(".date("Y, ").(date("n") - 1).date(", j").")";
}
?>
function PrintJSONFromPHP(pJSONStr) {
var aJSONObj = eval('('+pJSONStr+')');
document.write(aJSONObj["Date"]);
}
var aJSONStr = '{ <?php echo GetJSONDate($FieldName = "Date"); ?> }';
PrintJSONFromPHP(aJSONStr);
</script>
</body>
</html>
Генерирует следующий HTML-код:
<html>
<body>
<script>
function PrintJSONFromPHP(pJSONStr) {
var aJSONObj = eval('('+pJSONStr+')');
document.write(aJSONObj["Date"]);
}
var aJSONStr = '{ "Date": new Date(2009, 8, 15) }';
PrintJSONFromPHP(aJSONStr);
</script>
</body>
</html>
При запуске отображается:
Tue Sep 15 2009 00:00:00 GMT-0600 (CST)
Если вы можете передать строку, которая выглядит как литерал объекта JavaScript (без использования переменной внутри него), строку можно преобразовать в объект. Это означает, что вы можете использовать его как JSON.
Надеюсь, это поможет.