如何添加" for"数组内部的函数输出?感谢
for($idid = 0; $idid <= $say; $idid++) {
echo "@";
print_r($string[$idid]['screen_name']);
echo " ";
}
$url = "https://api.twitter.com/1.1/statuses/update.json";
$twitter = new TwitterAPIExchange($settings);
$requestMethod = 'POST';
$response = $twitter->setPostfields(
array(
'status' => "I NEED TO ADD FOR FUNCTION OUTPUT HERE")
)
->buildOauth($url, $requestMethod)
->performRequest();
答案 0 :(得分:2)
您应该保存为变量而不是像这样打印到屏幕:
clearTimeout(timeout);
来自$status = "";
for($idid = 0; $idid <= $say; $idid++) {
$status .= "@";
$status .= print_r($string[$idid]['screen_name'], true);
$status .= " ";
}
的第二个参数是返回输出而不是打印它。您可以查看更多here
然后在数组中使用print_r
变量,如下所示:
$status
答案 1 :(得分:1)
您只需要在for循环中构建一个字符串,然后在API调用中引用它:
$status = '';
for ($idid = 0; $idid <= $say; $idid++) {
// Only keep if you're also printing output to the screen
echo "@";
print_r($string[$idid]['screen_name']);
echo " ";
// New Code
$status .= '@' . $string[$idid]['screen_name'] . ' ';
}
$url = "https://api.twitter.com/1.1/statuses/update.json";
$twitter = new TwitterAPIExchange($settings);
$requestMethod = 'POST';
$response = $twitter->setPostfields(array(
'status' => trim($status)
))->buildOauth($url, $requestMethod)
->performRequest();
答案 2 :(得分:1)
不是打印字符串,只需将它们保存在变量中供以后使用。
$var = '';
for($idid = 0; $idid <= $say; $idid++) {
$var = $var . "@";
$var = $var . print_r($string[$idid]['screen_name'], true);
$var = $var . " ";
}
...
$response = $twitter->setPostfields(
array(
'status' => $var)
)
编辑:print_r()接受第二个参数,如果这是真的,则输出以字符串形式返回而不是打印。
句点用于字符串连接,并且有一些缩写,即 $ var。=&#39; &#39;; 而不是 $ var = $ var。 &#39; &#39 ;; 。但是现在为了清楚起见,我明确地编写了代码。
答案 3 :(得分:0)
使for循环中的内容成为变量。像这样:
$output = "";
for($idid = 0; $idid <= $say; $idid++) {
$output .= "@".print_r($string[$idid]['screen_name'], true)." "; // true makes it return the content instead of printing it
}
$url = "https://api.twitter.com/1.1/statuses/update.json";
$twitter = new TwitterAPIExchange($settings);
$requestMethod = 'POST';
$response = $twitter->setPostfields(
array(
'status' => $output)
)
->buildOauth($url, $requestMethod)
->performRequest();