Side 1 av 1

Re: Konvertere sekunder til minutter (PHP)

Lagt inn: 22. feb 2013, 09:29
av SumSum
ConSenzo skrev:Hei, jeg bare lurer på om noen kan hjelpe meg med å lage en slik :roll:
funksjon, altså sette den opp slik som denne siden forklarer. :)-

http://stackoverflow.com/questions/3172332/ :geek:
convert-seconds-to-hourminutesecond

Jeg driver selv å utvikler en virksomhet som kunne trengt denne :razz:
funksjonen som konvertere sekunder til minutter (PHP)

- Håper dere er mere seriøse en Freak. ;-)
script kan sendes om du kan hjelpe meg! :)
Det står jo faktisk i klartekst på den siden du henviser til, men her har du det i en liten teskje:

Kode: Velg alt

$allofit = date("G:i:s", $original);
$result = explode (':',$allofit);
Resultatet er et array som inneholder tre elementer: Timer, minutter og sekunder.

Hvis du vil ha detaljene, altså uten å bruke date-funksjonen, så:

Kode: Velg alt

$hours = floor($original/3600);
$temp = $original%3600;
$minutes = floor($temp/60);
$seconds = $temp%60;
echo "Tid: $hours:$minutes:$seconds\n";

Re: Konvertere sekunder til minutter (PHP)

Lagt inn: 22. jan 2016, 13:07
av kgun
Server kode som php er nok bedre enn klient kode som JavaScript på et nettsted der server språket er php.

Med moderne JS bibliotkerer som jQuery, jQuerymobile, three.js, node.js, angular.js etc. etc. får man ikke samme problemer med ulike nettlesere. Her er en jQuery kode for å telle ned sekunder som kan være aktuell for noen:

Kode: Velg alt

(function($) {
	$.fn.countdown = function(options, callback) {

		//custom 'this' selector
		thisEl = $(this);

		//array of custom settings
		var settings = { 
			'date': null,
			'format': null
		};

		//append the settings array to options
		if(options) {
			$.extend(settings, options);
		}
		
		//main countdown function
		function countdown_proc() {
			
			eventDate = Date.parse(settings['date']) / 1000;
			currentDate = Math.floor($.now() / 1000);
			
			if(eventDate <= currentDate) {
				callback.call(this);
				clearInterval(interval);
			}
			
			seconds = eventDate - currentDate;
			
			days = Math.floor(seconds / (60 * 60 * 24)); //calculate the number of days
			seconds -= days * 60 * 60 * 24; //update the seconds variable with no. of days removed
			
			hours = Math.floor(seconds / (60 * 60));
			seconds -= hours * 60 * 60; //update the seconds variable with no. of hours removed
			
			minutes = Math.floor(seconds / 60);
			seconds -= minutes * 60; //update the seconds variable with no. of minutes removed
			
			//conditional Ss
			if (days == 1) { thisEl.find(".timeRefDays").text("day"); } else { thisEl.find(".timeRefDays").text("days"); }
			if (hours == 1) { thisEl.find(".timeRefHours").text("hour"); } else { thisEl.find(".timeRefHours").text("hours"); }
			if (minutes == 1) { thisEl.find(".timeRefMinutes").text("minute"); } else { thisEl.find(".timeRefMinutes").text("minutes"); }
			if (seconds == 1) { thisEl.find(".timeRefSeconds").text("second"); } else { thisEl.find(".timeRefSeconds").text("seconds"); }
			
			//logic for the two_digits ON setting
			if(settings['format'] == "on") {
				days = (String(days).length >= 2) ? days : "0" + days;
				hours = (String(hours).length >= 2) ? hours : "0" + hours;
				minutes = (String(minutes).length >= 2) ? minutes : "0" + minutes;
				seconds = (String(seconds).length >= 2) ? seconds : "0" + seconds;
			}
			
			//update the countdown's html values.
			if(!isNaN(eventDate)) {
				thisEl.find(".days").text(days);
				thisEl.find(".hours").text(hours);
				thisEl.find(".minutes").text(minutes);
				thisEl.find(".seconds").text(seconds);
			} else { 
				alert("Invalid date. Here's an example: 12 Tuesday 2012 17:30:00");
				clearInterval(interval); 
			}
		}
		
		//run the function
		countdown_proc();
		
		//loop the function
		interval = setInterval(countdown_proc, 1000);
		
	}
}) (jQuery);