2009-11-25 83 views
0

我收到了一個像這樣的代碼,工作得很好。格式化PHP變量的日期

$dates[] = date('F, Y', $date); 

我想知道是否有可能將變量傳遞給第一個參數。這樣的事情(但這不起作用):

$date_format = 'F, Y'; 
$dates[] = date($date_format, $date); 

編輯:這實際上工作得很好。剛把變量放在錯誤的地方。

+0

這個按預期工作。你有什麼錯誤嗎? – 2009-11-25 08:45:09

+0

現在這個工作...只是把變量放在一個錯誤的地方。傻我! – 2009-11-25 08:48:07

回答

1

date()只是需要一個字符串作爲它的第一個參數。無論是像你的第一個例子一樣的文字字符串還是包含像第二個例子一樣的字符串的變量都無關緊要 - 它們是等價的。

2

這是完全合法的。至於爲什麼它不起作用,你能提供一個不起作用的代碼片段嗎?會有一些其他的原因。我運行此:

$date_format = 'F, Y'; 
$inputs = array(time(), time() + 5000000, time() + 10000000); 
$dates = array(); 
foreach ($inputs as $input) { 
    $dates[] = date($date_format, $input); 
} 
print_r($dates); 

,並得到:

Array 
(
    [0] => November, 2009 
    [1] => January, 2010 
    [2] => March, 2010 
) 
0

我試試你的代碼,對我來說沒問題。

你確定你的約會是一個時間嗎?以功能時間爲例?