以下代码可以工作并从json文件中提取所有图像。
var baked = $("#recipes li").get();
for(var i = 0; i<baked.length, i++;){
var currentBaked = $(baked[i]).get('a');
currentBaked.parent().addClass(currentBaked.text().substring(0,1));
}
有没有办法可以让它只抓住最后两张照片。
答案 0 :(得分:1)
是的,有办法。
$result = array_slice($json['format'], -2);
试一试。
答案 1 :(得分:0)
使用此:
$numItems = count(foreach($json['format']);
$i = 0;
foreach($json['format'] as $item) {
if(++$i === $numItems-1) {
result1 = $json['format'][$i]
echo "first picture!";
} if(++$i === $numItems) {
result2 = $json['format'][$i]
echo "second picture!";
}
}
结果1和结果2是你的照片
答案 2 :(得分:0)
你可以颠倒数组的顺序,在foreach循环中向后运行,抓住前两个然后中断。
$reversed = array_reverse($json);
$counter = 0;
foreach ($reversed['format'] as $item) {
if ($counter == 2) {
break;
}
//your echo image code
++$counter;
}
答案 3 :(得分:0)
我的版本使用array_pop
:
$content = file_get_contents('URL');
$json = json_decode($content, true);
// take last element of array, array reduces by 1 element
$last = array_pop($json['format']);
print_r($last);
// take last element of array again, array reduces by 1 element
$last = array_pop($json['format']);
print_r($last);
// Beware - using `$json['format']` later means that
// you use array without two last elements