如何添加换行符或回车符到Facebook图形API的描述
这听起来像一个非常简单的问题,但我可以找到答案没有。
我有一个textarea的帖子。 并且我想使用当前的facebook php库来执行以下操作...
$description = $_POST['textarea_description'];
//magic happens
$attachment = array(
'access_token' => $token,
'message' => "$title",
'picture' => "$image_url",
'link' => "$action_link",
'name' => "$action_label",
'caption' => "$caption",
'actions' => $action_json,
'description' => "$description",
);
$facebook->api('/'.$my_uid.'/feed', 'POST', $attachment);
并有它的工作。 现在它似乎忽略了
<br> <br /> n r nr rn
但我相信我可能会做一些事情来搞砸我的测试..我只需要用一些有效的东西来代替'魔术发生'。 现在它只是将所有的新行都转换为空格......非常令人沮丧。 有人在Facebook论坛上建议addslashed()的所有东西......但这似乎并没有为我工作
谢谢,-FT
如果您的文本行数足够长,并且您将每行中的每个空格替换为非空格(“&nbsp;”),并在该行的末尾放置一个常规空格,那么这会产生强制每个空格换行,例如
这&NBSP;是&NBSP;一些&NBSP;示例&NBSP;文本&NBSP,等等。 这&NBSP;是&NBSP;一些&NBSP;示例&NBSP;文本&NBSP,等等。 这&NBSP;是&NBSP;一些&NBSP;示例&NBSP;文本&NBSP,等等。
如果任何行太短,您可以使用&nbsp; 字符
我编写简单的函数,添加
每行文字之后。
public static function fbLinkDescriptionNewLines($string){
$parts = explode("n", $string);
$row_limit = 60;
$message = '';
foreach($parts as $part){
$str_len = strlen($part);
$diff = ($row_limit - $str_len);
$message .= $part;
for($i=0; $i <= $diff; $i++){
$message .= ' ';
}
}
return $message;
}
注意:在您的字符串中,您必须使用n
来换行。
上一篇: How to add newlines or carriage returns to description on facebook graph API
下一篇: Is there a way to render WPF controls on top of the wpf WebBrowser control?