2011-04-26 111 views
1

可能重複:
mysql_fetch_array() expects parameter 1 to be resource, boolean given in select奇怪的日期()警告錯誤

林試圖讓存儲在WordPress的自定義字段的日期,並把它添加到一個數組這樣的:

$my_array[] = date('j, n', get_post_meta($post->ID, 'date_value', true)); 

我不斷收到下面的錯誤,我無法弄清楚問題可能是什麼。任何想法爲什麼它會拋出此警告?

Warning: date() expects parameter 2 to be long, string given 
+0

那麼get_post_meta()返回什麼?一個字符串或一個unix日期戳? – 2011-04-26 17:07:41

+0

在您的get_post_meta($ post-> ID,'date_value',true)中打包strtotime。這應該是好的。希望得到後期meta是你的自定義函數,你不會在該函數內的任何地方進行轉換......它應該是strtotime(get_post_meta($ post-> ID,'date_value',true)); – Karthik 2011-04-26 17:08:18

回答

1

日期預計整數epoch time.

假設

get_post_meta($post->ID, 'date_value', true) 

將返回一個劃時代的時間,但作爲一個字符串,你只需要添加intval

intval(get_post_meta($post->ID, 'date_value', true)) 
0

該函數可能會返回日期字符串,如'2011-04-28 12:34:56'。 date()函數需要一個時間值,這是一個簡單的unix樣式整數時間戳。

1

長,如整數。你傳遞一個字符串。 :(它有一個非常精緻的飲食,那一個,儘量給它一個整數。

0

date() PHP函數預期參數,使得

string date (string $format [, int $timestamp ]) 

被維持。

根據the documentationget_post_meta()從WordPress的,設置$single參數設置爲true產率「(布爾值)(可選)如果設置爲真,則該函數將返回一個結果,作爲字符串」。

這意味着您正在得到一個字符串,其中一個整數是預期的。