Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Problem z dodawaniem zmiennych
Forum PHP.pl > Forum > PHP
lodziarz
Nie znalazłem nic na forum co by mogło mi pomóc, więc piszę:

Pobieram z dwóch stron dane w postaci:
  1. <?php
  2. $a = "2 weeks 4 days 2 hours 12 minutes";
  3. $b = "2 days 23 hours 50 minutes";
  4. ?>


Jak je zsumować w najprostszy i najszybszy sposób, żeby otrzymać "3 weeks 2 hours 02 minutes"? (days pomijamy bo wychodzi 0 - nowy tydzień, chociaz nic sie nie stanie jak bedzie tam jeszcze "0 days" - dla mnie to nie ma znaczenia).

P.S.: Proszę się nie dziwić jak w tym co dodałem bedzie sie cos nie zgadzac - dodawane w pamieci tongue.gif
P.S.2: Podane przeze mnie zmienne są zmiennymi przykładowymi. Mogą się tam pojawić jeszcze np. seconds, years, itp.

Z góry dziękuje za odpowiedź!

Pozdrawiam
kossa
Pomysł taki na szybko:

- dzielisz ciąg za pomocą explode" title="Zobacz w manualu PHP" target="_manual po spacji a następnie zliczasz ilość elementów i zaczynasz od końca, porównujesz sekundy, dodajesz, jeśli więcej niż 60 to sprawdzasz ile więcej i zapamiętujesz, potem idziesz do minut i podliczasz, dodajesz zapamiętane minuty z sekund i przechodzisz do godzin... itd

Łukasz
flv
Prościej chyba będzie tak:
  1. <?php
  2. $a = "2 weeks 4 days 2 hours 12 minutes";
  3. $b = "2 days 23 hours 50 minutes";
  4. $result = (strtotime($a) - time()) + (strtotime($b) - time());
  5. ?>

I ze zmiennej $result która zawiera liczbe sekund obydwu dat możesz wyciągnąć ilość minut, dni, tygodni etc. proste działania matematyczne.
lodziarz
Dziekuje! Dziala flv! kossa równiez dziekuje za pomysl, mialem sie za to brac, ale pomysl flv faktycznie jest szybszy. Zaczalem strtotime sam probowac na poczatku ale mi cos za wielkie liczby wychodzily... nie odjalem time() po prostu Rkingsmiley.png
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.