Bash : array_search

array_search : recherche dans un tableau la clé associée à une valeur

Équivalent à la function PHP array_search

Code

 


function array_search() {

    # equivalent to PHP array_search
    # call: array_search needle array

    local needle="$1" IFS=" "; shift; read -a array <<< "$@"

    for (( i=0; i < ${#array[*]}; i++ )); do
        if [[ "${array[$i]}" == "${needle}" ]]; then echo "$i"; fi
    done
    return 1

    unset array needle IFS

}
 

 

Paramètres

needle est la valeur à rechercher.

haystack est le tableau

Valeurs de retour

Retourne la clé pour needle, si elle est trouvée dans le tableau haystack.

Autrement retourne 1 : considérez cette valeur comme FALSE.

Exemple

 


declare -a color=("blue", "red", "green", "grey");

echo "$(array_search "red" "${color[@]}")"
 

 

 

 


<<| Page : Bash : function : array : array_search : |>>


 

 

^ Haut de page ^