0

我正在将图像文件信息推送到数组中。它非常简单,除了关键字有时也是一个数组。这对我现在正在做的事情很有用。这是我的数组的示例

$list[]=array(filename=>$file,width=>$w,height=>$h,caption=>$iptc["2#120"],keywords=>$iptc["2#025"]);

我可以使用这个数组来输出 javascript 幻灯片放映所需的 html。

if($handle = opendir($dirname)) { 
  while(false !== ($file = readdir($handle))){ 
    if(eregi($pattern, $file)){ 
      //if this file is a valid image 
      $path = $dirname . "" . $file ; 
      $path2 = $dirname ."JPEG/" . $file ; 
      $size = getimagesize($path, $info); 
      $w = $size[0]; $h = $size[1]; 
      $iptc = iptcparse($info['APP13']); 

      if(in_array($key,$iptc["2#025"])){
        $list[]=array(
          filename=>$file,
          width=>$w,
          height=>$h,
          caption=>$iptc["2#120"],
          keyw‌​ords=>$iptc["2#025"]
        ); 
      } 
    } 
  } 
  closedir($handle); }

我希望能够在数组中有另一个变量,当添加每个唯一关键字时,它会计数一个数字。这将允许我直接进入幻灯片的中间,因为我使用的 js 幻灯片的 js 插件只有在被数字引用时才具有直接链接

我想我需要创建一个包含所有关键字的唯一数组,然后使用某种复杂的 if 语句来计算每个唯一变量......

但是我不知道该怎么做

请帮忙

谢谢

杰里米

4

1 回答 1

0

我不确定我是否了解您要查找的内容,但听起来像:

while(loop_conditions){
    $list[]=array(filename=>$file,width=>$w,height=>$h,caption=>$iptc["2#120"],keywords=>$iptc["2#025"]);
    foreach($iptc["2#025"] as $keyword){
        $list_map[$keyword]++;
    }
}
于 2012-09-21T22:57:20.707 回答