如何解析变量?

时间:2010-10-27 11:19:51

标签: php function

我的PHP中有以下测试行,可以在我的PHP代码中发布到Twitter。

$oauth->post('statuses/update', array('status' => "hello world"));

但是我想发布一个变量的内容而不是Hello World

如果我按如下方式更改代码,那么所有发布的内容都是$ message

$oauth->post('statuses/update', array('status' => '$message'));

我也试过没有'但后来没有发布,即

$oauth->post('statuses/update', array('status' => $message));

如何正确解析$ message的内容?

$ message创建如下

$message = "http://www.smartphonesoft.com/index.php?option=com_mtree&task=viewlink&link_id=" .$link_id . " " ."Windows Phone Software" . " " .$link_name . " " . $metadesc;

我添加了一条echo $消息,它显示了我的预期,即:

  

http://www.smartphonesoft.com/index.php?option=com_mtree&task=viewlink&link_id=33183073   Windows Phone软件掌上电脑   掌上电脑是一种摇滚乐的方式   在Windows上欣赏音乐和视频   移动设备。通过多种媒体   和播放列表格式,互联网   连接,插件扩展和   一个直观的界面,掌上电脑   意味着更少的音乐,更多的音乐!

谢谢,

格雷格

4 个答案:

答案 0 :(得分:3)

来自Twitter API doc for status/update:

  • status状态更新文本,最多140个字符。根据需要进行URL编码。

所以我要说你必须缩短$message,因为你的有369个字符。

答案 1 :(得分:1)

您引用的最后一个代码是正确的。您确定$message是否包含有意义的内容?

(旁白:'$message'发布“$ message”的原因是:PHP中的单引号字符串不会获得变量插值也不会转义字符:'\n'字面上是“\ n”,而"\n"会产生一个包含换行符的字符串。)

答案 2 :(得分:0)

'$message'无法正常工作,因为您实际上是在传递字符串"'$message'",而不是$message变量。

如果您发布的第二个代码不起作用,可能是因为您的脚本中没有定义$message,或者因为您的脚本中的其他内容是错误的,但我们无法真正告诉您其余的代码。

答案 3 :(得分:0)

由于您的网址对于Twitter来说太长了,或许您希望在发布之前缩短网址。

bit.ly API documentation页面将帮助您设置帐户和自己的API密钥。

然后,您可以从官方文档中设计自己的代码,也可以按照bit.ly api tutorial by David Walsh

进行操作