Титла: Датите в PHP ми правят проблем Публикувано от: 3p0 в Aug 29, 2016, 11:18 Опитвам се да правя изчисление на период между бъдеща дата и днешна дата, (по-скоро дата, час, минута, секунда),
обаче получавам събщение за неправилно подаден параметър: Код: <?php Fatal error: Call to a member function diff() on string in index.php Тогава добавям един ред за конвертиране от стринг в дата: Код: <?php Fatal error: Call to a member function diff() on boolean in index.php И закъсах тотално ??? Титла: Re: Датите в PHP ми правят проблем Публикувано от: go_fire в Aug 29, 2016, 11:49 Еха-а ти си пишеш по старият начин — всичко накуп. Така лесно се стига до грешка, като твоята. Мързи ме да ти чета старателно кода, но п4п е много приятелски настроен и ти се казва точно каква е грешката. Между другото го правиш грешно. Това е много по-добре не да се прави директно с дати, а с числови низове по времето на Юникс, едно от най-хубавите неща в тая ОС.
Титла: Re: Датите в PHP ми правят проблем Публикувано от: Naka в Aug 29, 2016, 14:13 Ако искаш да сравняваш дати(със време или без) най лесният начин е да работиш със Unix timestamp.
Това е обикновенно число - броят секунди от началото на January 1 1970 00:00:00 и тогава просто изваждаш две числа. И ще получиш разликата в секунди между двете дати. print time(); strtotime("+1 day"); print strtotime("+1 day")- time(); 86400 sec = 24 * 60 * 60 има си функции за преобразуване от стрингова дата към timestamp-а и обратно. Титла: Re: Датите в PHP ми правят проблем Публикувано от: 3p0 в Aug 29, 2016, 15:09 Полудях, обаче стана:
Код: <?php Дава резултат: Днес е 2016-08-29 15:08 0г. 0м. 2д. 22ч. 52м. 0г. 0м. 2д. 23ч. 7м. Титла: Re: Датите в PHP ми правят проблем Публикувано от: Zorkata в Aug 29, 2016, 16:14 Ето едно решение, което е малко по-различно и лично спред мен по-елегантно:
Код: <?php Между другото, ако искаш да научиш нещо ново, защо не се хванеш да научиш MEAN (MongoDB, ExpressJS, AngularJS, NodeJS)? Според мен това има своите преимущества и има глад за такива специалисти. Титла: Re: Датите в PHP ми правят проблем Публикувано от: 3p0 в Aug 29, 2016, 16:32 @Zorkata,
Наистина е по-елегантно твоето решениe, само при мен "\n" не прави нов ред, затова изпoлзвах <br> . Титла: Re: Датите в PHP ми правят проблем Публикувано от: NorthBridge в Aug 29, 2016, 17:59 Опитвам се да правя изчисление на период между бъдеща дата и днешна дата, (по-скоро дата, час, минута, секунда), Здрасти колега [_]3 В първия ти пример гърми защото date() връща...стринг, а не DateTime обект, съответно ти се опитваш да извикаш метод на стринг, което няма как да стане. Във втория ти пример имаш разминаване между двата формата - на едното място е 'Y-m-d H:i:s', а на другото 'Y-M-d H:i:s' (голямо и малко М във формата ще имат различни резултати, затова гърми). Ако ги направиш еднакви на двете места, примера работи. Предполагам че драскаш някакво скриптче, но ако ще го ползваш в проект, не се мъчи с default-ния DateTime, а ползвай Carbon библиотеката ($2). Между другото, ако искаш да научиш нещо ново, защо не се хванеш да научиш MEAN (MongoDB, ExpressJS, AngularJS, NodeJS)? Според мен това има своите преимущества и има глад за такива специалисти.Той може и Java ЕЕ да научи ако му се учи нещо ново, там също има глад за специалисти [_]3 Титла: Re: Датите в PHP ми правят проблем Публикувано от: 3p0 в Aug 29, 2016, 19:10 Здрасти @NorthBridge [_]3
За първия пример, се досетих, че е заради стринговото съдържание на променливата .... За втория пример, помислих, че PHP е много капризен, защото забелязах, че имам променлива за формата, а използвам директно описание, но не забелязах, че са различни и като сложих променливата на мястото на директното описание, спря да дава съобщението за грешка :) Самообучавам се, като си поставям сам задачи, примерно на 1.септември имам да ходя на две места и ако успея да ме подсети този пример, като включи някой виде-клип от интернет в точно определеното до минута време, значи няма да забравя, да отида на тези две места - имам 2 дни да го постигна. :) Докато търсех в интернет срещнах Carbon, но не се задълбочих .... Титла: Re: Датите в PHP ми правят проблем Публикувано от: 3p0 в Aug 30, 2016, 12:43 Като не става всичко с PHP, ще опитам с JS :D
|