这个简单的代码试图获得一个值的问题

时间:2016-09-10 19:22:19

标签: wordpress

我很困惑为什么这么小的差异可能会成为一个大问题。

这里是只输入数字的工作代码。

$user_info = get_userdata(70);
  echo 'Username: ' . $user_info->user_login . "\n";

此代码显示用户名:sarah

现在相同,但这次使用了代码

$number = the_author_meta('ID');
echo $number;   // echos   70
$user_info = get_userdata($number);
  echo 'Username: ' . $user_info->user_login . "\n";

并且下面的代码只显示了userame:就是这样。

3 个答案:

答案 0 :(得分:1)

确保您已阅读代码。在这一行:

$user_info = get_userdata($number);

您错过了变量$ number中的r

答案 1 :(得分:1)

问题在于:

将“the_author_meta”替换为“get_the_author_meta”

the_author_meta只是立即向屏幕输出您要检索的信息。这就是它输出“70”的原因。如果你摆脱它前面的回声,它仍然输出70.

get_the_author_meta实际返回值并将其分配给变量,就像您期望的那样。

答案 2 :(得分:0)

$aaaaaa = $author_id=$post->post_author;
$user_info = get_userdata($aaaaaa);
  echo 'Username: ' . $user_info->user_login . "\n";
      echo 'User roles: ' . implode(', ', $user_info->roles) . "\n";
      echo 'User ID: ' . $user_info->ID . "\n";

echo get_user_option( 'rc_banned', $user_info->ID);