[pdksh] array_key_exists()
#1

La fonction array_key_exists() vérifie l'existence d'une clé dans un tableau !

Équivalent à la function PHP array_key_exists()

Code :
array_key_exists() {
    local key="$1"; shift
    set -A array -- "$@"

    [ "${array[$key]}" ] && return 0 || return 1
    
    unset search array
}

----

Paramètres :

key est la clé à rechercher
array est le tableau dans lequel chercher

Valeurs de retour :

Retourne 0 pour la clé key, si elle est trouvée dans le tableau array : considérez cette valeur comme TRUE
Autrement retourne 1 : considérez cette valeur comme FALSE

----

Exemple :

Code :
#!/bin/ksh

set -A algos_noms "RSASHA512" "ED25519" "ED448"

if array_key_exists "1" "${algos_noms[@]}"; then
    echo "key exists!"
else
    echo "key seems not exists!"
fi

----

Bogue :

Si la clé recherchée est de type alphabétique [a-z][A-Z], il retourne TRUE car considère le premier index !

Pour rappel : pdksh ne gère pas les tableaux associatifs, il ne gère qu'un tableau indexé numériquement...

GPG:Fingerprint ed25519 : 072A 4DA2 8AFD 868D 74CF  9EA2 B85E 9ADA C377 5E8E
GPG:Fingerprint rsa4096 : 4E0D 4AF7 77F5 0FAE A35D  5B62 D0FF 7361 59BF 1733
Répondre


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)