Pour ceux qui viennent juste de commencer cette série, notons que nous examinons la programmation orientée objet utilisant PHP dans le contexte de WordPress..
Nous le faisons du point de vue de la très débutant, donc si vous êtes un développeur expérimenté ou que vous connaissez bien la plupart des aspects de la programmation orientée objet, cette série n’est probablement pas pour vous..
Cela dit, si vous sont intéressé par l'apprentissage de la programmation orientée objet en PHP et que vous vous considérez comme un débutant, nous allons continuer la série présentée dans cet article en parlant de certains types de données proposés par PHP.
Mais tout d’abord, assurez-vous de bien comprendre les articles précédents de la série, qui se construisent les uns sur les autres:
Une fois que vous êtes tous pris, nous pouvons commencer à parler de types.
Nous avons terminé le dernier article avec ce qui suit:
Nous y arriverons, mais nous devons d’abord aborder certains des aspects les plus primitifs de la programmation tels que les chaînes, les tableaux, les boucles et les conditions..
Maintenant, les chaînes, les tableaux, etc. sont ce que nous considérons comme des types. Les boucles et les conditionnelles sont ce qu'on appelle des structures de contrôle que nous couvrirons dans le prochain article..
Dans l’intervalle, imaginons un terme simple pour décrire le type de données afin de savoir comment les modéliser de manière conceptuelle à l’avenir, non seulement avec cet article, mais avec le reste du contenu de la série..
Pour quiconque a écrit tout code qui inclut des variables, alors vous avez probablement semblé quelque chose comme ce qui suit:
$ name = 'Tuts + WordPress';
$ is_active = true;
$ age = 42;
Dans la forme la plus basique, vous entendrez probablement le code ci-dessus défini comme des variables avec des définitions, ce qui est correct, mais c'est une définition très généralisée..
Vous voyez, chaque fois que vous définissez une variable en PHP, vous le faites en préfixant la variable avec $
. Cela permet à PHP de savoir que vous définissez une variable et qu'elle représentera une valeur typique..
Assez facile, à droite?
La chose est, il y a différents les types en PHP. Pour ceux qui viennent de ce qu'on appelle des "langages fortement typés", nous en parlerons plus brièvement, mais sachez que PHP propose les types de données suivants:
Tout ce qui va des booléens aux chaînes peut être considéré comme un type de données simple, où les tableaux et les objets peuvent être considérés comme des types de données plus complexes.
Les types de données simples sont définis comme tels car les données qu’ils représentent sont,, simple. C'est-à-dire qu'il tombera normalement sous la bannière de vrais, de faux, de nombres décimaux et de mots et / ou de phrases.
Pour donner des exemples concrets de chacun de ces éléments:
vrai
ou faux
.-12
, -2
, 1
, 100
, 5000
, etc. 3.1459
, 2,5
, 100.25
, etc. Si vous essayez de sauver la valeur de, disons, 3/4
alors vous sauveriez réellement .75
sauf si vous l'avez enregistré en tant que chaîne. C'est-à-dire que vous deviez sauver '3/4'
. Remarquez la délimitation subtile entre les deux? On a des guillemets et l'autre pas.'phrases comme ça'
ou un seul 'mot'
ou même quelque chose de plus complexe comme 'e952098vjdkw94kd'
. Voici le piège, bien que n'importe lequel des types de données ci-dessus puisse être converti en chaînes en les mettant entre guillemets.
Par exemple, si vous utilisiez la valeur booléenne, par exemple, true, mais que vous deviez la stocker dans une variable comme celle-ci: $ is_active = 'true';
alors vous venez de créer une chaîne qui se lit vrai
.
De même, si vous écrivez une chaîne qui lit $ age = '42';
alors vous avez créé une chaîne contenant le numéro 42
, ne pas un nombre entier.
Avoir du sens?
La raison pour laquelle cela est important est que lorsque vient le temps de travailler avec des structures de contrôle (ce que nous verrons dans le prochain article), c'est que parfois, une comparaison peut avoir des conséquences inattendues si vous n'êtes pas sûr. lequel type de données avec lequel vous travaillez.
En plus des types de données simples, nous avons également des types de données complexes qui, à mon avis, ne sont pas vraiment cette compliqué. En fait, je pense à cela comme une façon élégante de dire que nous avons des moyens de stocker plusieurs éléments d'information dans une seule variable; alors que, avec des types simples, nous avons un moyen de stocker des informations uniques dans une seule variable.
Assez facile à retenir, non? Alors, quels sont certains des types de données les plus complexes?
Les deux types de données complexes principaux sur lesquels nous allons nous concentrer dans cette série sont des tableaux et des objets. Il y en a plus, mais ils sortent du cadre de cette série, donc si vous êtes intéressé, n'hésitez pas à consulter le manuel PHP, mais je vous préviens: si vous êtes débutant absolu, le contenu peut sembler un peu accablant.
$ names = ['John', 'Paul', 'Ringo', 'George'];
Notez ici que nous avons un tableau de chaînes, mais un autre aspect des tableaux PHP est qu’ils peuvent contenir plusieurs types de données. Cela signifie que vous pouvez avoir un tableau qui ressemble à $ various_types = [42, TRUE, 'Star Wars', .007];
. Un peu cool, droit?0
, 1
, 2
, 3
, et ainsi de suite - et les tableaux associés sont indexés par leurs clés telles que 'guitare rythmique'
, 'tambours'
, etc.En ce qui concerne les objets, le meilleur moyen de voir à quel point ils peuvent être complexes est de les voir en action, ce que nous ferons certainement lorsque nous construirons un plugin..
Notez que dans certaines langues, la taille du tableau doit être déclarée avant que vous puissiez réellement l’utiliser. Par exemple, en C, vous devez indiquer au compilateur que le tableau contiendra exactement, disons, 10 valeurs.
Dans le cas de PHP, c'est ne pas l'affaire. Les tableaux de PHP sont dynamiques, ce qui signifie que vous pouvez continuer à ajouter des données au tableau sans augmenter sa taille. Oui, comme pour tout, il y a des limites, mais elles sont généralement liées à la taille des données stockées ou à la quantité de mémoire disponible sur une machine..
Mais pour le moment, ne laissez pas les mots simple et complexe vous intimider. Certes, "simple" est relativement simple, non? Mais "complexe" a cette connotation qu'il sera difficile à comprendre, et ce n'est pas vrai - j'espère que cet article est démontré que.
Les types de données complexes peuvent simplement contenir plusieurs éléments de données. Les types de données simples ne peuvent pas.
Oui il y en a. À savoir ressources, rappels et pseudo-types. La plupart d'entre eux sont hors de portée pour cette série particulière; Cependant, nous peut finissons par utiliser des callbacks (qui sont un certain type de fonctions) plus tard lorsque nous commençons à construire notre plugin.
N'hésitez pas à en prendre connaissance le plus possible, mais sachez qu'ils dépassent le cadre du contenu que nous couvrirons dans cette série particulière. Si vous vous sentez dépassé, revenez-les une fois la série terminée..
Certains langages de programmation connaissent ce qui est typé dynamiquement (ou faiblement typé) alors que d’autres sont appelés langages fortement typés.
C’est un autre cas dans lequel la terminologie intimide souvent les nouveaux programmeurs au lieu de leur donner la possibilité d’utiliser les outils disponibles, mais la distinction entre les deux est tout à fait simple:
chaîne sMyName
; Ensuite, je stocker une chaîne dans la variable. sMyName = 'Tom McFarlin';
. Cela signifie que le sMyName
variable peut seulement tenir les ficelles. Si vous essayez de stocker un autre type de données dans cette variable, le compilateur générera une erreur..$ mon_nom = 'Tom McFarlin';
comme j'ai pu $ mon_nom = faux
. Si vous essayez de stocker un autre type de données dans cette variable, cela fonctionnera correctement. Vous pouvez voir que cela présente à la fois des avantages et des inconvénients..Avant de revenir au monde de la programmation orientée objet, nous devons parler de quelques structures de base de programmation supplémentaires, telles que des structures de contrôle..
Celles-ci incluent des éléments tels que des boucles, des conditions, etc. pouvant avoir une incidence sur le flux de code tout au long du cycle de vie du programme. De plus, ils travaillent main dans la main avec les types de données que nous avons décrits ici..
Donc, avant de passer au prochain article, assurez-vous de passer en revue tout ce qui se passe ici, de laisser des commentaires, des questions et des commentaires dans le fil de commentaires..
Je te verrai dans le prochain article!