2013-05-21 3 views
0

Je ne sais pas sur celui-ci et espérait que vous seriez en mesure de me aider sur celui-ci ...Obtenir une valeur d'un tableau dans un tableau

Voici mon code

Loader::library('file/types'); 
    $ih = Loader::helper('image'); 
    $names = explode("||",$this->tName); 
    $urls = explode("||",$this->tUrl); 
    $fIDs = explode("||",$this->fID); 

    Loader::model('file'); 
    $i = Loader::helper('image'); 

    $v = array(); 
    $cc = 0; 

    foreach ($names as $k=>$n){ 
     if (intval($fIDs[$k]) > 0) : 
     $img = $test = File::getByID($fIDs[$k]); 
     $fv = $img->getExtension(); 
     $ft = FileTypeList::getType($fv); 
     $img = $ft->type == 1 ? $img : false; 
     else : 
     $img = false; 
     endif; 
    $v[$cc]['name']   = $n; 
    $v[$cc]['url']   = $urls; 
    $v[$cc]['src']   = $img ? $ih->getThumbnail($img,100,100)->src : false; 
    $cC++; 
    } 
    return $v; 

Et Je rencontre des problèmes avec l'obtention des valeurs de tableau à partir de $ urls dans ce code. (5ème dernier)

foreach ($names as $k=>$n){ 
     if (intval($fIDs[$k]) > 0) : 
     $img = $test = File::getByID($fIDs[$k]); 
     $fv = $img->getExtension(); 
     $ft = FileTypeList::getType($fv); 
     $img = $ft->type == 1 ? $img : false; 
     else : 
     $img = false; 
     endif; 
    $v[$cc]['name']   = $n; 
    $v[$cc]['url']   = $urls; 
    $v[$cc]['src']   = $img ? $ih->getThumbnail($img,100,100)->src : false; 
    $cC++; 
    } 
    return $v; 

Merci pour votre aide. Appréciez-le.

Répondre

0

Je pense que vous devez faire quelque chose comme ceci:

$i = 0; 

foreach ($names as $k=>$n){ 
    if (intval($fIDs[$k]) > 0) : 
    $img = $test = File::getByID($fIDs[$k]); 
    $fv = $img->getExtension(); 
    $ft = FileTypeList::getType($fv); 
    $img = $ft->type == 1 ? $img : false; 
    else : 
    $img = false; 
    endif; 
$v[$cc]['name']   = $n; 
$v[$cc]['url']   = $urls[$i]; //changed 
$v[$cc]['src']   = $img ? $ih->getThumbnail($img,100,100)->src : false; 
$cC++; 
$i++; //changed 
} 
return $v; 
0

Puisque vous Boucler dans le tableau de noms en utilisant k $ comme l'index, vous pouvez accéder à l'URL correspondant avec le même index. Ainsi, vous pouvez changer la ligne:

$v[$k]['url'] = $urls[$k]; 

Il n'y a pas besoin de garder une trace de l'indice en utilisant la variable cc $ depuis k $ représente déjà l'indice actuel dans le tableau de noms. Vous accédez déjà au tableau fID de la même manière (en utilisant $ k).

Questions connexes