gpt4 book ai didi

php - bit.ly php api - 在 '&' 符号后切断查询字符串参数?

转载 作者:搜寻专家 更新时间:2023-10-31 21:17:36 24 4
gpt4 key购买 nike

我有一个 Flash 应用程序,其中包含用于自定义迷你应用程序的 Twitter 共享。

我使用通过 php 查询字符串传入的 flashvars 非常简单地实现了这一点,因此您的自定义颜色和消息将传递到迷你应用程序。

问题当然是 twitter 的 url 长度,所以我希望使用 bit.ly api for php 来缩短动态 url 并将该散列 url 传回 flash。

我已经编写了一个函数来执行此操作,它工作正常但是它在第一个“&”符号之后切断了第二个查询字符串参数?

例如,以下函数运行 url 'http://s46264.gridserver.com/apps/soundgirl/fbwall.php?colour=red&message=twittertest'

缩短为 http://bit.ly/i4kfj0其中,解析后变为 http://s46264.gridserver.com/apps/soundgirl/fbwall.php?colour=red

它正在截断第二个查询字符串参数。有人知道我可以阻止这种情况发生的方法吗?

谢谢。

<?php

function bitly_shorten($url)
{
$username = "modernenglish";
$apikey = "myapikey";
$response = file_get_contents("http://api.bit.ly/v3/shorten?login=$username&apiKey=$apikey&longUrl=$url&format=json");
$response = json_decode($response);
if ($response->status_code == 200 && $response->status_txt == "OK")
{
return $response->data->url;
} else
{
return null;
}
}
$link = urldecode("http://s46264.gridserver.com/apps/soundgirl/fbwall.php?colour=red&message=twittertest");
echo bitly_shorten($link);
?>

最佳答案

也许试试:

在调用bitly_shorten()之前没有urldecode():

$link = "http://s46264.gridserver.com/apps/soundgirl/fbwall.php?colour=red&message=twittertest";

将 URL 上的 urlencode() 添加到您的 bitly_shorten() 函数中:

$response = file_get_contents("http://api.bit.ly/v3/shorten?login=$username&apiKey=$apikey&longUrl=".urlencode($url)."&format=json");

关于php - bit.ly php api - 在 '&' 符号后切断查询字符串参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5289938/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com