【问题标题】:PHP Getting Random Gives Blank ResultsPHP得到随机给出空白结果
【发布时间】:2015-02-16 00:21:55
【问题描述】:

这是 WordPress 插件脚本的一部分。我正在尝试编辑它以获得我自己的自定义标题。下面的代码返回文本:

随机短语

'post_title' => 行没有从quotes.txt 文件中获取随机行。知道为什么这不起作用吗?

function random_phrase () 
{ 
$quotes = file ("quotes.txt");
$num = rand (0, intval (count ($quotes) / 3)) * 3;
echo $quotes[$num] . "<br>" . $quotes[$num + 1];
}

// and create a post
$wpvt_post = array(
    'post_title' => random_phrase,
    'post_content' => $post_content,
    'post_author' => $item['item']['post_author'],
    'post_status' => $item['item']['post_status'],
);

【问题讨论】:

  • var_dump($quotes); var_dump($num);请基本调试
  • $num + 1 如果第一个随机选择是数组的最后一个会导致问题,然后它会尝试选择下一个,但它不存在。

标签: php function random


【解决方案1】:

试试

'post_title' => random_phrase(),

也不应该是echo,而是return。 请注意,您的随机索引生成会出错。

【讨论】:

  • 您的建议是从文本文件中获取该行。不过,我遇到了一些奇怪的错误。获得两个头衔而不是一个。您对代码有更好的建议吗?谢谢。
  • 摆脱 . “
    ”。 $quotes[$num + 1] ?即:返回 $quotes[$num];而对于 rand 你应该只使用 rand (0, count ($quotes));
  • 我相信我明白了。感谢您的帮助。
  • 没问题。请接受答案以结束问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-02
相关资源
最近更新 更多