Php imploding数组然后制作分离的字符串

时间:2014-08-19 16:20:05

标签: php arrays string

php场景相当新,这让我很头疼。

所以我正在进行api调用(twitch.tv),我想获得预览链接,有3个不同的链接,以.jpg结尾。现在的问题是它存储为数组,我需要将其分解为字符串。

我试过了

$preview = $json_array['stream']['preview'];
$foo = implode(",",$preview);
echo $foo;

$ foo打印出http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-80x50.jpg,http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-320x200.jpg,http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-640x400.jpg,http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak- {width} x {height} .jpg

现在,我该如何将这些角色加入到字符串中,这样我才能显示图像。

2 个答案:

答案 0 :(得分:2)

你根本不应该加入你的阵列。在您的示例中,$json_array['stream']['preview'];如下:

array(
  'small' => 'http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-80x50.jpg',
  'medium' => 'http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-320x200.jpg',
  'large' => 'http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-640x400.jpg',
  'template' => 'http://static-cdn.jtvnw.net/previews-ttv/live_user_adam_ak-{width}x{height}.jpg'
);

因此,您可以使用其中一个提供的图像:

  • $json_array['stream']['preview']['small']
  • $json_array['stream']['preview']['medium']
  • $json_array['stream']['preview']['large']

如果所有图像都不符合您所需的分辨率,您可以使用模板:

echo str_replace("{width}", $width, str_replace("{height}", $height,"Hello world!"));

答案 1 :(得分:0)

在将数组加入到字符串中时,您将没有图像链接,您将有3个链接连接在一起。使用;

$json_array['stream']['preview'][0]

并更改您想要的图像的0。