Introduction à ActivePerl variables spéciales Notions de base de ActivePerl - Partie 14 Introduction Cela fait partie de ma série 14, Bases de ActivePerl. Dans cette partie de la série, nous regardons ce qui est appelé ActivePerl variables spéciales. Ce sont des variables qui ont déjà été déclarés dans l'interprète pour vous. Vous ne devez pas les déclarer à nouveau. Sous certaines conditions, les variables d'acquérir certaines valeurs.
Comme vous apprendre Perl, vous apprenez les noms de ces variables, les valeurs qu'ils acquièrent et les conditions dans lesquelles ils acquièrent les valeurs. Une de ces variables entrent dans l'un des trois types de données. Donc, une de ces variables est un scalaire ou un tableau ou un hachage. Remarque: Si vous ne pouvez pas voir le code ou si vous pensez que quelque chose manquait (lien brisé, l'image absente), contactez-moi au [email protected]. Qui est, me contacter pour le moindre problème que vous avez à propos de ce que vous lisez.
Deux exemples de cette partie de la série, nous examinons deux des variables, qui sont $ _ et_. Le premier est un scalaire; le second est un tableau. Le plus tard, a été mentionné dans un des chapitres précédents. Le nom de l'ancien est _. Elle est précédée de $ car il est un scalaire, dans le nom de la variable. Le nom de ce dernier est aussi _. Il est précédé par @, car il est un tableau. Il ya beaucoup de ces variables déjà déclarées pour vous dans l'interpréteur ActivePerl.
La façon dont vous pourrez déclarer votre propre variable, est juste pour commencer avec le mot réservé, mon, puis un espace, suivi par $, @ ou% et eux le nom de la variable, puis un point-virgule pour faire une déclaration. Après que vous écrivez votre code votre variable fera l'acquisition de la valeur (ou des valeurs) selon le code que vous écrivez. Ces variables spéciales se comportent d'une manière similaire, à la différence qu'ils ont déjà été déclarées pour vous dans l'interpréteur.
En outre, les conditions dans lesquelles ils vont acquérir certaines valeurs ont déjà été déterminées dans l'interpréteur. Les valeurs particulières qu'ils acquièrent dépendent de l'état. Vous apprendrez les conditions et les valeurs acquises que vous apprenez ActivePerl. Dans cette partie de la série, nous apprenons les conditions et les valeurs acquises pour _ $ et_, au niveau de base. Les noms de ces variables spéciales sont comme des signes de ponctuation. Certains d'entre eux sont en fait des signes de ponctuation, comme avec $ ?. Ne vous inquiétez pas à propos de $? pour l'instant.
En général, les noms de ces variables ne sont pas susceptibles les noms que vous souhaitez donner à votre propre utilisateur variables déclarées. Vous devriez normalement donner un nom à une variable que vous pouvez vous rappeler, comme dansbooks, où vous voulez livres pour désigner un éventail de livres. Donc, à peine y aurait-il des conflits entre vos variables et ces variables spéciales. La variable $ _ La syntaxe de la commande foreach est, foreach Vairable (Liste) {} Si quelque chose #do variable (qui est un scalaire) dans la syntaxe est pas tapé, alors $ _ prendrait sa place.
Vous pouvez ensuite utiliser $ _ l'intérieur du bloc que vous souhaitez utiliser, variable. Considérons le fragment de code suivant: foreach my $ item (theArr) {print $ item, "} Si vous ne tapez pas la variable $ élément, puis la variable spéciale, $ _ prendrait la place de la variable $ article Le bloc. du code devrait être écrit comme, foreach (theArr) {print $ _, "} $ item n'a pas été tapé dans la première ligne de la construction, de sorte que l'intérieur du bloc, $ _ a été utilisé à sa place.
Lire et essayer le code suivant: use strict; print "Content-Type: text /html \\ n \\ n"; montheArr = ("HBWE", "FGTR", "HTNK", 4587, 4526, 4053, "AB12", "GB58», «TG45", "RE69"); foreach (theArr) {print $ _, "} Je espère que vous apprécierez maintenant la condition et les valeurs de la manière $ _ a comporté. Il existe d'autres situations dans ActivePerl où $ _ est utilisée. Les situations sont similaires à celui qui vient décrit .
La variable_ Lorsque vous appelez un sous-programme (fonction) avec des arguments, lorsque la fonction est en cours d'exécution, tous les arguments seront membres de la variable spéciale_. Donc, dans un sous-programme du tableau_ contient les arguments passés à ce sous-programme. Cette variable tableau a déjà été pré-déclarée dans l'interpréteur. Vous ne devez pas déclarer de nouveau. Chaque fois qu'un sous-programme est appelé, les valeurs de ce tableau deviennent les valeurs des arguments transmis à la sous-routine. Le tableau .
_ est rempli, en commençant par le premier indice
(0) Si le sous-programme est appelé sans arguments, le tableau sera vide Lire et essayer le code suivant:. use strict; print "Content-Type: text /html \\ n \\ n "; mySub sub {print $ _ [0],"} mySub ("un", "deux", "trois"); Le sous-programme est appelé avec trois arguments («un», «deux», «trois»). Lorsque la sous-routine est exécutée, la valeur du premier élément de_ est la valeur du premier argument, la valeur du deuxième élément est la valeur du second paramètre, et que le troisième élément de est la valeur du troisième argument .
Remarque: Depuis le nom de la matrice,_, est _, les éléments du tableau, sont $ _ [0], $ _ [1], $ _ [2], etc. En passant listes comme arguments aux sous-routines La question Vous pouvez avoir est la suivante: ce qui se passe si l'argument passé est un tableau ou une table de hachage. Si l'argument est un tableau ou une table de hachage, dans la fonction qu'il effondre (devient plat) perdre son identité et de ses éléments deviennent des valeurs du tableau_. Faisons la démonstration avec une expérience.
Lire et essayer le code suivant: use strict; print "Content-Type: text /html \\ n \\ n"; my $ scale = "on"; monarr = ("deux", "trois"); mon% hsh = (DDD => "quatre", EEE =>