2011-06-21 34 views
0

我總是發現通過特定示例工作可以幫助我理解 - 所以我想看看如何將代碼轉換爲可反覆調用的函數。有關創建php函數的幫助

此代碼從wordpress中的自定義字段中讀取日期,格式爲YYYYMMDD,並將其顯示爲全日友好日期(例如'2001年1月1日星期一')。我想將它作爲function.php文件中的一個功能移動,以便我可以從不同的地方調用它,並瞭解轉換髮生的方式。

<?php 
$date = get_post_meta($post->ID, 'date', true); 
if ($date){ 
$mydate = "$date"; 
echo date('l, j F, Y', strtotime($mydate)); 
} 
?> 

謝謝!

+0

爲什麼'$指明MyDate = 「$日期」 你可能會想驗證它第一次; '?使用鑄造'$ mydate =(string)$ date;'。你甚至可以在函數'echo date('l,j F,Y',strtotime((string)$ date));' – Dan

+7

這個函數中做到這一點。淨/手動/ EN/functions.returning-values.php)**? – netcoder

+0

@netcoder我看了一些教程,問題是我不明白很多解釋的方式 - 我不知道原始代碼是什麼,所以我覺得很難分開!謝謝你的鏈接,我會試試看。 – JorgeLuisBorges

回答

0
function get_wp_date($post){ 
    $date = get_post_meta($post->ID, 'date', true); 
    if ($date){ 
     $mydate = "$date"; 
     return date('l, j F, Y', strtotime($mydate)); 
    } 
    return false; 
} 

然後做稱呼它:

echo get_wp_date($post); 

所以你要確保它不會返回false

+1

他應該如何訪問'$ post-> ID'? – LazyOne

+0

@LazyOne - 我假設'$ post'是一些wp全局變量。 OP沒有顯示它在哪裏或如何定義 – Neal

+0

@Neal如果它是全球性的,你仍然必須正確處理它,對吧?沒有人取消了可變能見度。只是......最初的答案並不是一個很好的例子,可以給一個沒有經驗的人(就像OP顯然是)。現在很好,我可以睡得很好:)。 – LazyOne