格式伙伴按日期选取器输出

时间:2013-03-23 作者:Red

我已经为我的BP用户创建了一个自定义配置文件字段,我希望在用户的配置文件页面上显示该值。下面的代码执行此操作。。。

<?php bp_profile_field_data( array(\'user_id\'=>get_the_author_meta( \'ID\' ),\'field\'=>\'birthday\')); ?>
。。。但它显示为“1985-10-30 00:00:00”。

如何将其格式化为这样显示:“1985年10月30日”

2 个回复
最合适的回答,由SO网友:s_ha_dum 整理而成

我不知道BuddyPress是否内置了日期函数,但是WordPress doesPHP does. 这应该可以做到:

$bpress_date = bp_profile_field_data( array(\'user_id\'=>get_the_author_meta( \'ID\' ),\'field\'=>\'birthday\'));
// $bpress_date = "1985-10-30 00:00:00"; // test
echo date(\'F, j, Y\',strtotime($bpress_date));
PHP的date 期望UNIXTIME. 这就是传递日期字符串的原因strtotime. 没有这一步,它就不起作用。

您可能想考虑使用WordPress\'date_i18n, 然而,这看起来像:

echo date_i18n(get_option(\'date_format\'),strtotime($bpress_date));
这使您能够根据博客的日期格式设置显示日期,从而将事情国际化。

SO网友:Rachel Baker

您可以使用PHP函数date()格式化生日时间戳。

示例:

<?php 
$birthday = bp_profile_field_data( array(\'user_id\'=>get_the_author_meta( \'ID\' ),\'field\'=>\'birthday\'));
echo date(\'F, j Y\', $birthday);
//would result in October, 30 1985
?>

http://www.php.net/manual/en/function.date.php

结束