hm, sitter med en rad som ser ut så här:
<? echo date ("F d Y", mktime (0,0,0,$datesplit[1],$datesplit[2],$datesplit[0]));?>
vilket ger utskriften January 04 2003.
Svensk som jag är vill jag ha det till 4 januari 2003 - hur? Bara byta plats på F o d blir inte rätt, osäker på hur setlocale funkar och om det ska användas här?
/Magnus
GaqziMedlem sedan aug. 2002224 inlägg Aha, bockar o bugar - ska bara försöka få in den i mitt skript också. Tack! :)
/Magnus
FlashesMedlem sedan jan. 2003282 inlägg Jag har gjort en förändring i Kalles script som jag vill ha, det ser ut så här.
<?php
$today = getdate();
$month = $today['month'];
$mday = $today['mday'];
$year = $today['year'];
$wday = $today['wday'];
if ($month == "January")
{$month = "Januari";}
if ($month == "February")
{$month = "Februari";}
if ($month == "March")
{$month = "Mars";}
if ($month == "May")
{$month = "Maj";}
if ($month == "June")
{$month = "Juni";}
if ($month == "August")
{$month = "Augusti";}
if ($month == "October")
{$month = "Oktober";}
if ($wday == "0")
{$wday = "Söndag";}
if ($wday == "1")
{$wday = "Måndag";}
if ($wday == "2")
{$wday = "Tisdag";}
if ($wday == "3")
{$wday = "Onsdag";}
if ($wday == "4")
{$wday = "Torsdag";}
if ($wday == "5")
{$wday = "Fredag";}
if ($wday == "6")
{$wday = "Lördag";}
if ($mday == "1" . "2" . "21" . "22" . "31")
{
echo "$wday, $mday:a $month $year";
}
else
{
echo "$wday, $mday:e $month $year";
}
?>
Utskriften blir alltså:
Onsdag, 15:e Januari 2003
Mvh
Jan-Olov
bionicMedlem sedan sep. 200347 inlägg Hur gör jag en funktion av detta? Så att jag bara skriver t.ex. svdate($datum) ?
AsterixMedlem sedan dec. 1999483 inlägg Detta bör funka. Orkade inte lägga in veckodagar men det borde du själv kunna göra om du vill.
<?php
function svdate($month, $day, $year)
{
$months = array ('januari', 'februari', 'mars', 'april', 'maj', 'juni', 'juli', 'augusti', 'september', oktober', 'november', december');
if (in_array ($day, array(1, 2, 21, 22, 31))
{
return $day .':e '. $months[$month] .' '. $year;
}
else
{
return $day .':a '. $months[$month] .' '. $year;
}
}
echo svdate (10, 1, 2003);
?>
bionicMedlem sedan sep. 200347 inlägg Fatal error: Call to undefined function: inarray() får jag..
AsterixMedlem sedan dec. 1999483 inlägg missade ett "_" "in_array" ska det vara. Har även ändrat i koden
bionicMedlem sedan sep. 200347 inlägg EDIT:
har datumet i databasen i ett fält av typen datetime...
använder jag $datum2 = date("m, d, Y", strtotime($datum1)); får jag ju ut datumet i rätt format, men det funkar ändå inte att köra svdatum($datum2).
Får
Warning: Missing argument 2 for svdate()
Warning: Missing argument 3 for svdate()
Vad är fel?
Ingen som vet?
--------------------------------------------------
Tackar, nu funkar det!
Var några småfel i koden...som 3 glömda ' och en ) men det märkte jag :)
tack för hjälpen än en gång!
2basMedlem sedan juni 2001181 inlägg Annat sätt med setlocale (som nämns i översta posten)
setlocale(LC_TIME, 'sv_SE');
strftime("%e %B kl %H:%M" , time());
%e %B .... fås från http://se.php.net/strftime
bionicMedlem sedan sep. 200347 inlägg Ingen som vet hur jag ska göra detta? 2bas kod blev inte riktigt samma sak :(