Comment utiliser if pour un jugement multi-branches dans le modèle DEDE ?
Quand nous utilisons dede comme modèle , Nous rencontrons souvent des situations où différents contenus doivent être affichés séparément sur la base d'un certain jugement conditionnel, qui est le jugement multibranche dans le modèle dede. Par exemple, généralement, nous devons afficher différentes icônes d'invite de risque en fonction des différentes valeurs du champ de niveau de risque niveau de risque dans la table de la base de données de gestion des risques. Comme le montre la figure 1.
Les icônes devant les noms des projets d'investissement dans l'encadré rouge représentent différents niveaux de risque. Il existe 4 niveaux de risque : AA, D, E et HR. Ce qui est enregistré dans la table de base de données est l'une de ces quatre valeurs de niveau, comme le montre la figure 2.
Notre champ de niveau de risque niveau de risque peut obtenir sa valeur dans le modèle de liste, car nous avons défini ce champ dans le modèle de contenu pour lui permettre d'être inclus dans la valeur du modèle de liste .
Comme le montre la figure 3.
De cette façon, nous pouvons facilement obtenir la valeur du niveau de risque via
{dede:listpagesize='10'} [field:risklevel/] {/dede:list}
dans le modèle de liste.
Mais les icônes d'invite correspondant à nos différents niveaux de risque sont situées dans le répertoire d'images, et les noms de ces fichiers d'images d'invite n'ont pas de règles, nous devons donc utiliser notre jugement pour définir différentes valeurs en fonction les différents niveaux de risque. Le chemin de l’image rapide.
Alors comment doit-on juger ?
doit utiliser la balise [field:array], alors comment devrions-nous la juger ?
Nous souhaitons d'abord vous présenter une balise dede très utile : la balise [field:array], qui est l'abréviation de la balise {dede:field name='array' /}, qui est utilisée dans les listes À l'intérieur de la balise, par exemple : la balise {dede:list}, {dede: arclist} et d'autres balises.
Nous savons qu'à l'intérieur de la balise list, nous pouvons obtenir la valeur d'un champ de table de base de données sous la forme de [field:field name/], puis lorsque nous voulons porter des jugements de branche, par exemple : en fonction du risque Différentes valeurs de niveau entraînent des chemins d'icônes différents. À ce stade, nous devons utiliser la balise [field:array] qui représente un enregistrement dans la table de base de données obtenu par requête. suit :
[field:array runphp='yes'] if(@me['risklevel']=="HR")@me="HR.png"; else if(@me['risklevel']=="D")@me="D.png"; else if(@me['risklevel']=="AA")@me="AA.png"; [/field:array] {/dede:list}
Cela signifie que si la valeur du champ de niveau de risque obtenu par la requête est HR, alors HR.png sera affiché Si la valeur du champ de niveau de risque obtenu par la requête est D, alors D.png sera affiché. Si la valeur du champ de niveau de risque obtenu par la requête est AA, alors AA.png sera affiché, ici c'est juste une chaîne représentant l'emplacement du fichier image que vous pouvez définir. vers n'importe quel chemin d'image. Le code ci-dessus est une instruction de sortie conditionnelle de branche. @me représente la variable de sortie lorsque vous entrez pour la première fois le champ d'étiquette : tableau, @me représente un enregistrement dans la base de données et son type de données est un tableau. . Nous jugeons en fonction de la valeur du niveau de risque, de sorte que @me soit défini sur des valeurs différentes. Lorsque vous quittez le champ de balise : array, la valeur de @me sera affichée dans sa position d'origine.
Cette balise est très puissante. Elle convient à nos scénarios les plus courants. Lorsque nous devons effectuer un jugement de branche basé sur des conditions spécifiques pour afficher un contenu différent dans la page du modèle, utilisez la balise field:array. nous apportera une grande commodité.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!