自定义元字段不会给我提供数值

时间:2013-02-05 作者:Mathieu

我很久以前就在尝试使用jquery插件了。这样,我想从自定义字段中的日期(2013/03/04格式)开始倒计时。Echo$Begin2告诉我:34天前。工作很好。

问题是我想把数字“34”作为一个数值。使用以下代码,echo $Nombre 给我“0”。我想是因为get_post_meta($post->ID, \'Begin\', true); 不是数值吗?

   $Begin = get_post_meta($post->ID, \'Begin\', true);
   $Begin2 = \'<abbr class="timeago" title="\'.$Begin.\'">\'.$Begin.\'</abbr>\';
   echo $Begin2;
   $Nombre = (int) substr($Begin, 0, strpos($Begin, \' \'));
   echo $Nombre;

1 个回复
SO网友:Chris_O
// Correct way to convert string to integer 
$begin = \'34\';
$number = (int)$begin;
var_dump( $number );
int 34

//Another correct way to convert string to integer
$number = (int)get_post_meta( get_the_ID(), \'begin\', true );
var_dump( $number );
int 34

//strops() = Find the numeric position of the first occurrence of needle in the haystack string.
// returns the numeric position or false if not found
$var = strpos( $begin, \' \');
var_dump( $var );
boolean false

//substr() = Returns the portion of string specified by the start and length parameters.
//Your passing 0 as start and since false gets interpreted as 0 your passing 0 as length
$substring = substr( $begin, 0, false );
var_dump( $substring );
string \' \'

//Same thing here but your converting the returned empty string into an integer which returns 0
$substring = (int)substr( $begin, 0, false );
var_dump( $substring );
int  0
结束

相关推荐

列出分类法:如果分类法没有POST,就不要列出分类法--取决于定制的POST-META?

这可能很难解释,我不知道是否有解决办法!?我有一个名为“wr\\u event”的自定义帖子类型和一个名为“event\\u type”的分层自定义分类法。自定义帖子类型有一个元框,用于event_date 并且与此帖子类型关联的所有帖子都按以下方式排序event_date. 我在循环中有一个特殊的条件来查询event_date 已经发生了-在这种情况下,它没有显示,但只列在我的档案中。就像你可以使用wp_list_categories() 我编写了一个自定义函数,它以完全相同的方式列出所有分类术语。现在