【问题标题】:PHP Interpolated Variable as function parameterPHP 插值变量作为函数参数
【发布时间】:2012-10-30 03:10:06
【问题描述】:

不确定这是否是 WordPress 问题,但我不这么认为。

我有一个while 循环,我在其中迭代用户创建的内容循环并尝试获取一个元字段,该字段具有一个与当前“键”匹配的数字标识符(如果你可以称之为,因为这根本不是一个数组,只是一个用户可以使用一些前端参数创建的自定义循环。$this_label_url 正在通过$this_label_url = get_post_meta($post->ID, 'instructor_{$number}_label_url', true); 的插值请求虚假“密钥”。在这个变量插值是不可能的场景?

<?php
   $total_panels = get_post_meta( $post->ID, 'total_panels', true );  // set by the user with a custom meta value called "total_panels" (an integer)
   $count = 1; // just a fake "key" for looping through my `while`

   // create a faux "number" - simply takes $count and adds leading zero if not present
   while ( $total_panels >= $count ) :

    if ( $count >= 9 ) {
        $number = '0' . $count;
    } else {
        $number = $count;
    } 
$this_label_url = get_post_meta($post->ID, 'instructor_{$number}_label_url', true);  // returns as an empty string, 

【问题讨论】:

  • 将单引号'改为双引号"

标签: php wordpress variables syntax interpolation


【解决方案1】:

可以,但是需要用双引号;单引号不会被解析以进行插值。

$this_label_url = get_post_meta($post->ID, "instructor_{$number}_label_url", true);

【讨论】:

  • 谢谢 - 那些恼人的“陷阱”之一。我想我喜欢单引号是个糟糕的人,我知道它总有一天会赶上我。
  • @Brian 他们有时间和地点,比如当你想在你的字符串中使用文字 $ 而不转义。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-12-20
  • 2016-05-01
  • 2013-12-23
  • 2014-12-28
相关资源
最近更新 更多