[Powered by Google Translate] [PHP Syntaxe] [Tommy MacWilliam] [Université de Harvard] [C'est CS50.] [CS50.TV] Dans cette vidéo, nous allons présenter PHP - l'une des langues que nous allons utiliser dans CS50 comme nous la transition vers le développement web. PHP signifie pour PHP Hypertext Processor, ou PHP Hypertext Processor Hypertext Processor, et je m'arrête là. PHP est un acronyme récursif, qui je pense est vraiment génial. Donc, nous allons écrire 'bonjour' en PHP, qui sera un peu différente de celle du monde bonjour »en C que nous avons appris à connaître et à aimer. Au lieu de créer un fichier appelé hello.c, nous allons créer hello.php. Tout notre code PHP sera contenue entre . Si nous avons un code PHP qui se trouve en dehors de ces séparateurs, il ne s'exécutera pas. Nous pouvons avoir le plus grand nombre de ces blocs PHP que nous voulons dans un seul fichier PHP. En PHP, il ya pas besoin d'une fonction principale. Au lieu de cela, notre code PHP sera exécuté dans l'ordre qu'il apparaît dans notre fichier PHP. Les deux C et PHP ont une fonction 'printf' pour sortir des données. Mais en PHP, nous n'avons pas besoin de # include des fichiers d'en-tête comme standardIO.h. C'est parce que dans PHP, nous ne serons pas compiler notre code. Lorsque nous avons écrit le code C notre flux de travail tend à être l'ouverture un ou plusieurs. c ou les fichiers. h, leur évolution, leur compilation, et en exécutant le binaire résultant. Découvrez la vidéo des compilateurs pour plus d'informations sur ce processus. Contrairement à C, PHP est un langage interprété - langue - plutôt que compilé. Cela signifie que le code PHP nous écrire sera exécuté à travers un programme spécial appelé un interprète, qui à son tour exécuter notre code. Pour exécuter notre code PHP, nous enverrons le long de l'interpréteur PHP qui se chargera de son exécution, plutôt que de le compiler en code machine. Voyons l'interprète en action. Nous allons ouvrir un terminal et exécutez la commande PHP suivi par le chemin vers le fichier PHP que nous aimerions faire fonctionner. Nous disons, 'php hello.php ». Et là nous allons. Il ya la sortie de notre programme PHP. Nous n'avons pas besoin de compiler notre fichier PHP du tout. Au lieu de cela, nous avons eu un autre programme - l'interpréteur PHP - exécuter le code source que nous avons écrit. PHP peut faire beaucoup plus que simplement printf. Écrivons certains programmes de PHP plus complexes. La syntaxe des constructions - comme si, d'autre, tandis que, pour et switch - est la même en PHP et C. Tout comme C, chacune de ces constructions utilise des accolades pour délimiter leur corps, et tout comme en C, chaque ligne nous écrivons doit se terminer par un point-virgule; Toutefois, les variables sont gérées un peu différemment en PHP. Tout d'abord, toutes les variables PHP doivent commencer par le signe dollar. Il semble un peu bizarre au début, mais vous y habituer. Deuxièmement, PHP est un langage faiblement typé ce qui signifie que vous n'avez pas besoin d'énumérer explicitement le type d'une variable lorsque vous le créez. Où en C, vous aurez besoin de dire int x = 5; ou char y = 'a'; en PHP, nous pouvons simplement dire $ x = 5; et $ y = 'a';. La même chose s'applique aux fonctions. Plutôt que de dire int f () {le corps de notre fonction} en PHP, nous allons dire la fonction f () {le corps de notre fonction}. Nous n'avons pas besoin de spécifier explicitement le type de retour de notre fonction f. Fonctions en PHP n'ont pas non plus pour renvoyer le même type chaque fois qu'ils sont exécutés. Par exemple, nous pourrions écrire une fonction qui retourne FALSE si une erreur et un autre type si elle réussit. Cela peut aussi nous aider à écrire des fonctions plus génériques. Par exemple, nous pourrions écrire une fonction de complément unique qui peut retourner un entier si 2 entiers sont donnés ou un flotteur si 2 flotteurs sont donnés. En C, nous aurions besoin d'écrire 2 fonctions distinctes pour ce faire. Alors que dans C, nous utilisons des pointeurs pour une augmentation de salaire et cordes, nous ne serons pas en mesure d'utiliser des pointeurs en PHP. Au lieu de cela, les deux tableaux et les chaînes sont des types intégrés dans PHP. Ils sont construits à droite dans la langue. Pour créer un tableau en PHP, nous pouvons dire, $ Une matrice = (1, 2, 3); ou plus simplement $ a = [1, 2, 3];. Nous index dans ce tableau peuvent utiliser la même syntaxe que nous sommes habitués à de C. Pour obtenir le premier élément que nous allons dire, $ a [0];. PHP dispose également d'un support intégré pour les tableaux associatifs. Les tableaux associatifs sont comme le hachage structure de données de table, nous avons déjà vu - ils correspondent une clé à une valeur. Prenons un oeil à un exemple. Nous pouvons dire, $ personnel = ["instructeur" => "david", "tf" => "tommy"];. Ici, j'ai un tableau associatif avec 2 clés - instructeur et tf. La double flèche, ou égal-plus-que, est utilisé pour séparer d'une clé et la valeur correspondante. Ainsi, la valeur de $ personnel ["tf"] est la chaîne "tommy". Les valeurs d'un tableau associatif - tout comme n'importe quel autre réseau - peuvent être de tout type. Par exemple, nous pourrions dire, $ personnel = ["instructeur" => "david", "TFS" => ["tommy", "rob"]];. Maintenant, la valeur de «TFS» est un tableau. Cela signifie que les valeurs à l'intérieur d'un tableau associatif peuvent être de différents types. Tableaux PHP n'ont pas non plus une longueur fixe, afin que nous puissions ajouter ou supprimer des éléments d'un tableau. Disons que nous avons un simple tableau comme $ a = [1, 2, 3];. Pour ajouter un nouvel élément à ce tableau, nous pouvons dire, $ a [] = 4;. Maintenant, notre gamme se compose de quatre éléments - [1, 2, 3, 4]. Rappelons que si nous voulions faire quelque chose comme ça en C, nous aurions à attribuer une toute nouvelle gamme, copier le contenu de notre première série en elle, puis définissez le dernier élément du nouveau tableau de notre nouvelle valeur. C'est beaucoup plus facile en PHP. Si notre tableau est un tableau associatif nous pouvons simplement définir une nouvelle clé pour créer un élément si elle n'existe pas encore. Si nous avons notre plus tôt array - $ personnel - nous pouvons dire $ personnel ["total"] = 3;. Maintenant, nous avons une nouvelle clé avec la valeur de 3. Pour obtenir le nombre d'éléments dans un tableau, nous pouvons utiliser la fonction 'count'. Si nous disons, count ($ a);, qui aura une valeur de 4. En PHP, nous pouvons créer des chaînes utilisant des guillemets doubles ou simples, si ces deux variables sont des chaînes. $ S1 = "string"; $ s2 = 'autre chaîne';. Quelle est la différence entre les deux? Eh bien, il est assez fréquent de vouloir inclure le la valeur d'une variable à l'intérieur d'une chaîne. Une façon de faire serait d'utiliser l'opérateur point de PHP, qui concatène des chaînes. Nous pourrions faire quelque chose comme ça - $ N = 5; $ s = 'n est' $ n.;. Voici notre variable n est un entier. Mais quand nous concaténer avec une chaîne, PHP elle sera automatiquement convertie en une chaîne pour nous. Ou nous pouvons simplement utiliser des guillemets pour mettre la variable dans la chaîne elle-même. Nous pouvons dire, $ s = "n est $ n";. Maintenant, la valeur de $ s sera 'n 5'. Si nous utilisons des guillemets simples, comme dans $ s = 'n est $ n'; la valeur de s sera 'n est $ n';. La valeur de n sera pas remplacé si nous utilisons des guillemets simples, mais il sera si nous utilisons des guillemets. Si nous voulons utiliser des guillemets pour inclure la valeur d'un tableau dans une chaîne, nous devons inclure les accolades autour du tableau, comme cela - $ S = "{$ personnel ['total']}";. Jetons maintenant un oeil à un petit extrait en C et le traduire en PHP. Ici, nous créons une fonction qui affiche les lettres d'une chaîne, un caractère par ligne. Faisons la même chose en PHP. Tout d'abord, nous aurons besoin de nos séparateurs PHP. Lorsque nous créons notre fonction, nous n'avons pas besoin de spécifier son type de retour ou le type de son argument. Notre variable s doit aussi commencer par un signe dollar. Strlen fonction de PHP nous donne la longueur d'une chaîne, tout comme C de strlen nous donne la longueur d'une chaîne. Sous le capot, cependant, ces fonctions sont en fait un peu différent depuis une chaîne est un type intégré dans PHP. La syntaxe de notre boucle "for" est le même. En PHP, on peut également utiliser la notation de tableau pour accéder aux caractères d'une chaîne. Nous pouvons maintenant utiliser la fonction d'impression pour imprimer chaque lettre de la chaîne. Avec la fonction d'impression de PHP, nous n'avons pas besoin de s'inquiéter des espaces réservés - comme% d% c ou - lorsque l'on veut imprimer une variable qui n'est pas une chaîne. Au lieu de cela, nous ne pouvons tout simplement passer une variable d'un type quelconque de la fonction d'impression, et elle sera convertie en une chaîne et affichée. Et c'est tout! Voyons maintenant fonctionner notre fichier avec PHP print.php ». Et il ya la sortie, nous avons vu de notre programme C. PHP supporte aussi un concept appelé la boucle 'foreach'. La boucle 'foreach' est comme une boucle "for", mais il ajoute un peu de sucre syntaxique pour rendre les choses plus lisible. Ici, nous créons un nouveau tableau intitulé «$ array». Maintenant nous pouvons dire, foreach ($ array que $ nombre), et nous pouvons imprimer $ nombre. Quand nous courons ce fichier - php-foreach.php-nous pouvons voir chaque numéro sur sa propre ligne. Lorsque nous avons écrit le code C, il est souvent utile d'organiser notre code dans des fichiers séparés. En PHP, nous pouvons faire la même chose. Disons que nous avons un certain nombre de fonctions dans un fichier appelé math.php. Si je veux utiliser ces fonctions dans un autre fichier PHP, comme calculator.php, Je peux utiliser la fonction de require_once () de PHP. Require_once est comme # include. Lorsqu'on leur donne un chemin vers un fichier, il sera essentiellement copiez et collez le contenu de ce fichier dans le fichier actuel. Require_once garantit que chaque fichier est incluse dans le fichier en cours une seule fois, ce qui peut être utile si vous avez une grande collection de fichiers PHP nécessitant l'autre. Prenons un oeil à un exemple. Ici, nous avons une collection de fonctions que je voudrais utiliser dans un autre fichier. Prenons un oeil à la façon dont nous pouvons les utiliser. Sur la ligne 3, nous exigeons math.php. Le '__DIR__' est une constante spécifique représentant le répertoire courant depuis math.php et calculator.php sont situés dans le même répertoire. Après nous avons besoin math.php, nous pouvons utiliser les fonctions  comme si nous avons défini dans calculator.php. Lançons avec 'php calculator.php ». Great! C'est tout pour notre introduction à la syntaxe de PHP. Pour en savoir plus, consultez PHP.net. PHP dispose d'un grand nombre de fonctions intégrées, et heureusement, sa documentation est vraiment génial. Mon nom est Tommy, et c'est CS50. [CS50.TV] ... Parenthèse, je suis sorti de la pièce. Damn it! Il s'agit de la dernière vidéo où je utiliser de grands mots dans le code.