Page 1 sur 1

Problem avec substr() et in_array()

Posté : 22 févr. 2017, 23:27
par gamerkilli
Bonjour,


j'ai un tp à rendre et je suis bloqué sur une question :

Dans le fichier fonctions.php, créez la fonction nommée TriFichiers()
présentée en annexe de ce document.
Cette fonction doit parcourir le tableau de fichiers passé en entrée et mettre dans
un nouveau tableau les noms des fichiers dont l'extension se trouve dans le
tableau d'extensions passé également en entrée. Pour cela, vous aurez besoin de 3
fonctions PHP :

- substr( ) : retourne une partie d'une chaîne de caractères (afin de
récupérer l'extension d'un fichier).
- in_array( ) : vérifie si une valeur appartient à un tableau (afin de vérifier
si l'extension d'un fichier se trouve dans le tableau d'extension).
- array_push( ) : rajoute un élément à la fin d'un tableau (afin d'ajouter le
fichier dans le tableau renvoyé en résultat).

la fonction est présentée en annexe comme ceci :

Image


je m'explique, j'ai donc 2 tableaux , l'un avec des extensions et l'autre avec des fichiers , le problème est le suivant ==> pour parcourir mes 2 tableaux j'utilise un foreach classique sauf que je n'arrive pas a comparer une partie d'une chaine avec substr() pour pouvoir verifier si son extension apparait bien dans le tableau des extensions ...

j'ai pour l'instant testé un truc dans ce genre :
function TriFichier($tab_fichiers, $tab_extensions)
{
    foreach ($tab_fichiers as $i)
    {
         if (substr($i , -3) == in_array($tab_exxtensions))
         {
             array_push($tab_fichiers_tries, $i);
         }
    }
    return $tab_fichiers_tries;
}


Merci d'avance à celles et ceux qui m’aideront !! :)

Re: Problem avec substr() et in_array()

Posté : 23 févr. 2017, 00:24
par or 1
http://php.net/manual/fr/function.in-array.php prend 2 paramètres et pas un seul.

Re: Problem avec substr() et in_array()

Posté : 23 févr. 2017, 18:45
par gamerkilli
Bonjour,

Je me demande si cela ne vient pas du substr() car quand je fais :
$a = array("salut");
$b = substr($a, -2);
print_r($b);
sa me renvoie une page blanche ..

Re: Problem avec substr() et in_array()

Posté : 23 févr. 2017, 19:06
par or 1
http://php.net/manual/fr/function.substr.php
le 1er paramètre est une chaine, or c'est un tableau qui est passé ...