Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Социальная инженерия и социальные хакеры. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Почему РНР и ява-скрипт по-разному считают???
 
 автор: coloboc66   (24.10.2008 в 11:38)   письмо автору
 
 

<?php
echo $blueMoonDate=mktime(17,14,0,4,2,1996);// получаем 828454440 - кол-во секунд
?>
<script>
var blueMoonDate = new Date(1996, 1, 3, 16, 15, 0)/1000;//на 1000 делим, чтобы привести результат к секундам
alert (blueMoonDate.getTime());// получаем 823356900 - кол-во секунд
</script>

Вроде ж все разницы в языках в началах счёта дней и месяцев учёл...

  Ответить  
 
 автор: sl1p   (24.10.2008 в 11:48)   письмо автору
 
   для: coloboc66   (24.10.2008 в 11:38)
 

а если попробовать с одних и тех же дат?)

  Ответить  
 
 автор: coloboc66   (24.10.2008 в 11:57)   письмо автору
 
   для: sl1p   (24.10.2008 в 11:48)
 

Ну так это и есть одинаковые даты, если только я не ошибся при переводе формата дат ява-скрипт в РНР.
Нужна дата: 4 февраля 1996 года 16 часов 15 минут 0 секунд.
То есть так по идее, но всё-равно не сходится:
<?php
echo $blueMoonDate=mktime(16,15,0,4,2,1996);//  - кол-во секунд
?>
<script>
var blueMoonDate = new Date(1996, 1, 4, 16, 15, 0)/1000;//на 1000 делим, чтобы привести результат к секундам
alert (blueMoonDate.getTime());//  - кол-во секунд
</script>

  Ответить  
 
 автор: Trianon   (24.10.2008 в 12:41)   письмо автору
 
   для: coloboc66   (24.10.2008 в 11:57)
 

1. Ошибка в порядке следования аргументов mktime()
2. Объект бесполезно делить на тысячу. Делить нужно время.
Если обе ошибки исправить, результаты на локалхосте совпадут.

  Ответить  
 
 автор: coloboc66   (24.10.2008 в 14:18)   письмо автору
 
   для: Trianon   (24.10.2008 в 12:41)
 

1.
$blueMoonDate=mktime(16,15,0,2,4,1996);//февраля 4-ое 1996 
settype($blueMoonDate,"int");//на всякий случай приводим к целому числу
echo $blueMoonDate;//получем число секунд - 823439700 
 

2.
var blueMoonDate = new Date(1996, 1, 4, 16, 15, 0);//1996 - февраль - 4-ое
blueMoonDate=blueMoonDate.getTime();получаем миллисекунды
blueMoonDate=Number(blueMoonDate);//на всякий случай приводим к целому числу
alert (blueMoonDate/1000); //получаем число секунд - 823443300

Нет совпадения:((

  Ответить  
 
 автор: Trianon   (24.10.2008 в 14:27)   письмо автору
 
   для: coloboc66   (24.10.2008 в 14:18)
 

между ними разница в 3600 сек.
Это точно локалхост?
Вероятно, таймзоны php и браузера не совпадают. Либо пояс, либо признак летнего времени.

  Ответить  
 
 автор: coloboc66   (24.10.2008 в 15:12)   письмо автору
 
   для: Trianon   (24.10.2008 в 14:27)
 

Это точно локалхост. И в самом деле разница в час. Бред какой-то...

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования