Skocz do zawartości
Szukaj w
  • Więcej opcji...
Znajdź wyniki, które zawierają...
Szukaj wyników w...

Rekomendowane odpowiedzi

Witam mam o to taką funkcje i zastanawiam się czy dało by się zrobić żeby pokazywała ilość lat, miesięcy tygodni dni, godzin minut i sekund w zależności od czasu np. jeśli czas by był większy niż rok to by pokazywała ilość lat, miesięcy i dni natomiast jeśli by czas był mniejszy niż 1 rok a większy niż 1 miesiąc to by pokazywało ilość miesięcy, tygodni i dni a poniżej 1 miesiąca ilość tygodni, dni i godzin, a jeśli mniej niż 1 tydzień to by pokazywało ilość dni godzin i minut a poniżej dnia ilość godzin, minut i sekund. Co myślicie na ten temat było by to dobrym rozwiązaniem? Potrzebował bym pomocy z zrobieniem przeliczniku miesięcy i lat z góry dzięki 🙂
 

Kod
 

function secondsToTime($seconds){
	$time = [];
	$result = '';
	//$time['weeks'] = floor(($seconds / 86400) / (86400 * 12));
	$time['days'] = floor($seconds / 86400);
	$time['hours'] = floor(($seconds - ($time['days'] * 86400)) / 3600);
	$time['minutes'] = floor(($seconds - ($time['days'] * 86400) - ($time['hours'] * 3600)) / 60);
	//$time['seconds'] = floor(($seconds - ($time['days'] * 86400) - ($time['hours'] * 3600) - ($time['minutes'] * 60)));
	/*
	if($time['weeks']>0){
		$result .= $time['weeks'].' tygodni ';
	}
	*/
	if($time['days']>0 && $time['days']>1){
		$result .= $time['days'].' dni ';
	}
	if($time['days']>0 && $time['days']==1){
		$result .= $time['days'].' dzień ';
	}
	if($time['hours']>0 && $time['hours']>4){
		$result .= $time['hours'].' godzin ';
	}
	if($time['hours']>0 && $time['hours']==1){
		$result .= $time['hours'].' godzina ';
	}
	if($time['hours']>0 && $time['hours']>1 && $time['hours']<=4){
		$result .= $time['hours'].' godziny ';
	}
	if($time['minutes']>0 && $time['minutes']>4){
		$result .= $time['minutes'].' minut ';
	}
	if($time['minutes']>0 && $time['minutes']==1){
		$result .= $time['minutes'].' minuta ';
	}
	if($time['minutes']>0 && $time['minutes']>1 && $time['minutes']<=4){
		$result .= $time['minutes'].' minuty ';
	}
	//if($time['seconds']>0){
	//	$result .= $time['seconds'].' sekund';
	//}
	return $result;
}

 

Edytowane przez DJ Kondzio

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
	public function formatSeconds($seconds)	{
		$time = array();
		$time['years'] = floor($seconds / 31536000);
		$time['weeks'] = floor($seconds / 604800);
		$time['days'] = floor($seconds / 86400);
		$time['hours'] = floor(($seconds - ($time['days'] * 86400)) / 3600);
		$time['minutes'] = floor(($seconds - (($time['days'] * 86400) + ($time['hours'] * 3600))) / 60);
		$time['seconds'] = floor(($seconds - (($time['days'] * 86400) + ($time['hours'] * 3600) + ($time['minutes'] * 60))));
		$result       = '';
		if ($time['years'] > 0) {
			$result .= $time['years'].' '.($time['years'] == 1 ? 'roku ' : 'lat ');
		}
		if ($time['weeks'] > 0) {
			$result .= $time['weeks'].' '.($time['weeks'] == 1 ? 'tygodnia ' : 'tygodni ');
		}
		if ($time['days'] > 0) {
			$result .= $time['days'].' '.($time['days'] == 1 ? 'dnia ' : 'dni ');
		}
		if ($time['hours'] > 0) {
			$result .= $time['hours'].' '.($time['hours'] == 1 ? 'godziny ' : 'godzin ');
		}
		if ($time['minutes'] > 0) {
			$result .= $time['minutes'].' '.($time['minutes'] == 1 ? 'minuty' : 'minut');
		}
		if ($result == '') {
			$result .= $time['seconds'].' sekund';
		}
		return $result;
	}

Trochę nie wiem czy o to tobie chodzi ale czytałem to już 10 raz i tak nie wiem o co tobie chodzi do końca mordeczko

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
5 minut temu, MichUŚŚŚ napisał:
	public function formatSeconds($seconds)	{
		$time = array();
		$time['years'] = floor($seconds / 31536000);
		$time['weeks'] = floor($seconds / 604800);
		$time['days'] = floor($seconds / 86400);
		$time['hours'] = floor(($seconds - ($time['days'] * 86400)) / 3600);
		$time['minutes'] = floor(($seconds - (($time['days'] * 86400) + ($time['hours'] * 3600))) / 60);
		$time['seconds'] = floor(($seconds - (($time['days'] * 86400) + ($time['hours'] * 3600) + ($time['minutes'] * 60))));
		$result       = '';
		if ($time['years'] > 0) {
			$result .= $time['years'].' '.($time['years'] == 1 ? 'roku ' : 'lat ');
		}
		if ($time['weeks'] > 0) {
			$result .= $time['weeks'].' '.($time['weeks'] == 1 ? 'tygodnia ' : 'tygodni ');
		}
		if ($time['days'] > 0) {
			$result .= $time['days'].' '.($time['days'] == 1 ? 'dnia ' : 'dni ');
		}
		if ($time['hours'] > 0) {
			$result .= $time['hours'].' '.($time['hours'] == 1 ? 'godziny ' : 'godzin ');
		}
		if ($time['minutes'] > 0) {
			$result .= $time['minutes'].' '.($time['minutes'] == 1 ? 'minuty' : 'minut');
		}
		if ($result == '') {
			$result .= $time['seconds'].' sekund';
		}
		return $result;
	}

Trochę nie wiem czy o to tobie chodzi ale czytałem to już 10 raz i tak nie wiem o co tobie chodzi do końca mordeczko

Zrobiłem to tak tylko że źle przelicza i jak zrobić z uwzględnieniem dni w miesiącu i w tygodniu oraz roku przyestępnego?
https://hastebin.com/uwokomaqog.bash

Bo takie coś mi się przykładowo wyświetla

 Nick: DJ Kondzio
 Status: Dostępny od
 Kanał: [cspacer]Poczekalnia

 Nick: Nick
 Status: Niedostępny od 11 miesięcy 48 tygodni 339 dni

Edytowane przez DJ Kondzio

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Trochę nie rozumiem jednego np.

$time['year']>0 && $time['year']==1

Tutaj wystarczy samo  $time['year']==1

 

Ogólnie jeżeli chcesz pomocy z tym odezwij sie 🙂

 

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
3 minuty temu, MichUŚŚŚ napisał:

Trochę nie rozumiem jednego np.

$time['year']>0 && $time['year']==1

Tutaj wystarczy samo  $time['year']==1

 

Ogólnie jeżeli chcesz pomocy z tym odezwij sie 🙂

 

nie da się do cb wysłać wiadomości czekam na tym ts co masz w profilu mam taki sam nick co na forum

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach

Temat został zamknięty.

Udostępnij tę odpowiedź


Odnośnik do odpowiedzi
Udostępnij na innych stronach
Gość
Ten temat został zamknięty. Brak możliwości dodania odpowiedzi.

  • Podobna zawartość

    • Przez DJ Kondzio
      Witam o tuż pisze własnego bota i napotkałem dziwny błąd który nw czemu mi zmienia wartość client_servergroups.
      Gdy wpisuje echo lub var_dump zmiennej $client['client_servergroups'] przed tym ifem "if(empty($$function) || time() > $$function){" to wyświetla się wszystko normalnie ale gdy zrobie to po tym ifie to wyświetla się tylko "array(1) {[0]=>  string(1) "2"}". Ma ktoś może jakiś pomysł co jest nie tak?
      Za pomoc dziękuje 🙂
       
      Kod:
      if(method_exists($function, 'isClient')){ if(array_key_exists('interval', $config[$instanceid]['functions'][$function])){ //echo($client['client_servergroups']); if(empty($$function) || time() > $$function){ //echo($client['client_servergroups']); $function::isClient($client); $$function = time() + $xfb->convertInterval($config[$instanceid]['functions'][$function]['interval']); } }else{ $function::isClient($client); } }  
    • Przez dezynffeqcja
      Witam, mam problem włączam xbota pisze

      Uruchomiles program starter.sh
      Wybrales: start
      XBot instancja 1  została włączona!
      XBot instancja 2  została włączona!

       a po wyłączeniu 


      Uruchomiles program starter.sh
      Wybrales: stop
      No screen session found.
      No screen session found.
      XBot  został wyłączony!

      a przy restarcie tak


      Uruchomiles program starter.sh
      Wybrales: restart
      No screen session found.
      No screen session found.
      XBot  został zrestartowany pomyślnie!


      Wszystko jest dobrze skonfigurowane

      Informacje o systemie:

      Linux ip102 4.4.83-1-pve #1 SMP PVE 4.4.83-96 (Tue, 19 Sep 2017 10:30:12 +0200) x86_64 x86_64 x86_64 GNU/Linux

      jest to vps 
       
    • Przez ROGUE
      Witam,
      Posiadam GBot'a na swoim serwerze TS3.
      Czy jest jakaś możliwość by zablokować nick tylko dla siebie jako administratora? Dodatkowo by nikt nie mógł go nawet w małym stopniu użyć np. Administrator1 / Administrator_ itp?
       
      Pozdrawiam
  • Ostatnio przeglądający   0 użytkowników

    Brak zarejestrowanych użytkowników przeglądających tę stronę.

×
×
  • Dodaj nową pozycję...