דאַג לויד אַזוי מיר ווע געטאן אַ פּלאַץ פון אַרבעט אין C, און C איז אַ טאַקע קיל שפּראַך ווייַל עס גיט איר די פיייקייַט צו ונטערטוקנ זיך טאַקע נידעריק מדרגה אין דיין מגילה. מיר באַקומען צו טאָן זאכן ווי טאַקע מינוט ווי מאַניפּיאַלייטינג יחיד ביטעס פון זכּרון. ריקאָל אַז פּוינטערז טאַקע לאָזן אונדז אַז בייגיקייַט. אבער טאָן מיר שטענדיק דאַרפֿן צו האָבן אַז פייַן-קערל מדרגה פון דעטאַל אין אונדזער מגילה? מיסטאָמע נישט, רעכט? און אויב מיר רע געגאנגען צו האָבן אַ האַנדל-אַוועק צווישן ווייל קענען צו טאָן טאַקע, טאַקע מינוט זאכן און טאַקע, טאַקע גרויס זאכן וואָס מיר טאָן ניט האָבן צו טראַכטן וועגן, מיר טאָן ניט האָבן צו מאַכשער די טאַקע גרויס געדאנקען אויב זיי ניטאָ שוין געבויט אין פֿאַר אונדז, בכלל פֿאַר בנין גרויס מגילה אָדער גרויס פּראַדזשעקס, מיר ניטאָ מיסטאָמע געגאנגען צו האָבנ אַ טאָעס אויף די זייַט ווייל מער שפּראַך שטאָפּן געבויט אין פֿאַר אונדז, אָנשטאָט ווייל די נידעריק-מדרגה שטאָפּן. און אַז ס ווו PHP טאַקע קומט אין. איצט, איינער פון די סיבות וואָס מיר לערנען PHP אין קס50 איז אַז עס ס שווער ינספּייערד דורך סי און אין פאַקט, אין מיין מיינונג, עס זענען טאַקע צוויי געבוירער שפּראַכן וואס זענען זייער פּראָסט נאַואַדייז. C און ליספּ. און זיי ניטאָ געבוירער שפּראַכן ווייַל יעדער אנדערע מאָדערן פּראָגראַממינג שפּראַך וואָס האט דעוועלאָפּעד זינט דעמאָלט איז ינספּייערד דורך איינער אָדער די אנדערע סינטאַקטיקאַללי. PHP איז זייער ענלעך סינטאַקטיקאַללי צו C, כוועראַז שפּראַכן ווי סכעמע, למשל, וואָס איר זאלט ​​האָבן געהערט פון, איז שווער ינספּייערד דורך אַ שפּראַך גערופֿן ליספּ, וואָס איז אַ עלטער שפּראַך. אַזוי די סיבה מיר לערנען PHP אין קס50 איז אַז, דורך געוואוסט C ווי פונדאַמענטאַללי ווי איר טאָן אין דעם פונט, פּיקינג אַרויף PHP, וואָס גיט איר די פיייקייַט צו טאָן פיל העכער מדרגה זאכן ווי C טוט, איז נישט אַז פיל פון אַ כערדאַל, ווייַל איר שוין האָבן די גרונט געדאַנק פון די סינטאַקס. C ס שוין אַרום פֿאַר כּמעט 45 יאר אין דעם פונט. PHP ס שוין אַרום פֿאַר וועגן 20 יאר. און אין וואָס 25 יאר אין צווישן, פּראָוגראַמערז באשלאסן אַז זיי וואָלט פיל אלא האָבן העכער מדרגה אַבילאַטיז, און די מיסטייקס און ראנגלענישן פון די 20 יאר אין צווישן געפֿירט צו PHP און אנדערע מאָדערן שפּראַכן. PHP ס אַ גרויס ברירה פון שפּראַך פֿאַר ווייכווארג אַז אַללאָוו-- פֿאַר ווייכווארג טהאַט-- ווו איר דאַרפֿן צו טאָן זאכן וואָס אין C זענען אַקטשאַוואַלי קאָמפּליצירט. אַזוי פֿאַר בייַשפּיל, אַרבעט מיט סטרינגס אין C איז זייער קאָמפּליצירט, ווייַל ווי מיר וויסן, סטרינגס אין C זענען טאַקע נאָר ערייז פון אותיות. עס ס ניט אַ געבויט-אין דאַטן טיפּ. אָדער טאָמער מער פונדאַמענטאַללי, עפּעס מיר האט ניט אַפֿילו דעקן אין C, וואָס אויב איר דאַרפֿן צו טאָן עטלעכע קאָמפּיוטער נעטוואָרקינג? אַלע רעכט? C האט די פיייקייַט צו טאָן עס, אָבער עס ס אַזוי אַרקיין און אַזוי שווער צו אַקטשאַוואַלי טאָן. וואָלט ניט עס זיין פייַן אויב די שפּראַך האט אַ געבויט-אין, גרינג וועג צו ינסטרומענט נעטוואָרקינג? און PHP איז אַ שפּראַך וואָס מאכט אַז, אָדער פאַסיליטאַטעס אַז, גאַנץ אַ ביסל מער. ווי איך געזאגט, PHP איז זייער שווער ינספּייערד דורך סי די סינטאַקס איז זייער ענלעך. און אַזוי עס זאָל אַלעווייַ מאַכן די יבערגאַנג פון איין צו די אנדערע אַ ביסל ווייך ווי עטלעכע אנדערע שפּראַכן זאל זיין. צו אָנהייבן שרייבן PHP, נאָר עפענען אַרויף אַ טעקע מיט די .פפּ טעקע געשפּרייט. טעקניקלי עס איז נישט אַקטשאַוואַלי required, אָבער אויב איר ווילן זאכן ווי סינטאַקס כיילייטינג אין ייד, אַזוי אַז טיפּ נעמען, אָדער בייַטעוודיק נעמען, פֿעיִקייטן, איר וויסן, די טערמינען פון די שפּראַך זענען כיילייטיד אין אַ ספּעציפיש קאָליר, איר בכלל ווילן צו נאָמען אייער טעקעס מיט אַ באַזונדער טעקע פאַרלענגערונג. אַזוי מיר ווע געהייסן אונדזער טעקע מיט אַ .פפּ געשפּרייט, אָבער דעמאָלט אויך מיט PHP, אַלע די PHP קאָד מיר שרייַבן אין אַז טעקע האט צו זיין ענקלאָוזד אין די PHP דעלימיטערס אַז מיר זען דאָ אויף דעם עקראַן. ווינקל קאַנטיקער? PHP צו אָנהייבן. דעמאָלט מיר שרייַבן אַלע פון ​​אונדזער PHP קאָד אַז מיר ווילן אין צווישן. און דעמאָלט? ווינקל קאַנטיקער צו נאָענט. אויב מיר טאָן ניט טאָן דעם, דעמאָלט וואָס ס 'געגאנגען צו פּאַסירן? עס ס ניט געגאנגען צו קראַך. עס ס ניט געגאנגען צו טאַקע צעשטערן אונדזער פּראָגראַם. אבער עס ס ניט געגאנגען צו האָבן די ווירקונג וואָס מיר ווילן. וואָס ס 'געגאנגען צו פּאַסירן, טאַקע, איז אַז ווען מיר פּרובירן און לויפן דעם פּראָגראַם, אַלץ ניט צווישן די דעלימיטערס איז געגאנגען צו זיין געדרוקט אויס ווערבייטאַם. עס ס ניט געגאנגען צו אַקשלי ויספירן דעם קאָד, עס ס געגאנגען צו נאָר דרוקן עס אויס ווערבייטאַם. איצט וואָס איז די פאַל? אַזוי C איז וואָס ס באַוווסט ווי אַ קאָמפּילעד שפּראַך. איר 'רע מיסטאָמע באַקאַנט מיט די שריט פון מאכן דיין מגילה, אויסגעדרייט די .ק טעקעס און .ה טעקעס אין אַ איין עקסעקוטאַבלע מיט מאַכן, אין באַזונדער ניצן קלאַנג ווי אונדזער קאַמפּיילער. PHP, כאָטש, טוט ניט האָבן דעם עקוויוואַלענט. PHP איז וואָס ס גערופֿן אַ ינטערפּראַטאַד שפּראַך. און וואָס טוט אַז מיינען? נו, עס מיטל מיר טאָן ניט האָבן צו בייַטן אונדזער מקור קאָד צו זעראָס און אָנעס בעפאָרעהאַנד. אלא, עס ס אַ פּראָגראַם, וואָס איז אויך באקאנט ווי PHP, אַז ונדערסטאַנדס PHP און קענען סאָרט פון מאַכן עס אויף די פליען. אַז ס ניט טאַקע פּונקט פּינטלעך, אָבער עס ס אַ שיין גוט אַנאַלאַדזשי פון וואָס ס געשעעניש. עס ס ינטערפּרעטינג די זעראָעס און אָנעס אויף די פליען. און אַזוי אויב עס טוט ניט וויסן ווי צו פּראָצעס עפּעס, אויב עס טוט ניט וויסן ווי צו פּראָצעס PHP, איר מיסטאָמע געוואלט צו לייגן אַז טעקסט אין עס, רעכט? איר מיסטאָמע געוואלט צו לייגן די קאָד אין דאָרט, אַפֿילו אויב עס ס ניט צווישן פפּ-- די PHP דעלימיטערס. בוט-- אַזוי עס ס ניט געגאנגען צו ויסמעקן עס פֿאַר איר, עס ס נאָר געגאנגען צו בייסיקלי אַוועקוואַרפן עס. אַזוי עס ס געגאנגען צו דרוקן עס אויס צו דעם עקראַן. דאס מיינט ווי עס ס אַ שלעכט זאַך, אָבער אַקטשאַוואַלי עס ס געגאנגען צו זיין אַ טאַקע גוט זאַך, ווי מיר וועט זען ווען מיר רעדן וועגן PHP וועב אַנטוויקלונג, ווייַל עס מיטל מיר קענען ינטערספּערסע PHP און HTML. מיר קענען נוצן זיי צוזאַמען צו שאַפֿן אַ מער דינאַמיש וועב בלאַט. אבער מער אויף אַז אין די ווידעא אויף PHP וועב אַנטוויקלונג. אזוי וואָס איז די סינטאַקס פון PHP? אַז ס וואָס דעם ווידעא איז אַלע וועגן. זאל ס רעדן וועגן עס. אַזוי צו אָנהייבן אויס, וועריאַבאַלז. PHP וועריאַבאַלז עקסיסטירן. עס זענען נאָר צוויי גרויס חילוק פון סי דער ערשטער איז אַז עס ס קיין טיפּ ספּעסיפיער. מיר טאָן ניט האָבן צו זאָגן ינט, טשאַר, לאָזנ שווימען, אַלע וואָס שטאָפּן. מיר טאָן ניט האָבן צו טאָן אַז ענימאָר. PHP איז אַ מאָדערן שפּראַך. עס קענען רעכענען אויס וואָס איר 'רע טריינג צו טאָן אָדער מאַכן אַ בעסטער טרעפן ווי צו וואָס איר ניטאָ טריינג צו טאָן. אַזוי אַז ס שיין פייַן. די אנדערע זאַך איז אַז אַלע בייַטעוודיק נעמען האָבן צו אָנהייבן מיט אַ דאָלאַר צייכן. אַז ס נאָר עפּעס צו באַקומען געניצט צו. עס ס אַ ביסל טשודנע, ווייַל עס ס אַזוי אַז PHP קענען פֿאַרשטיין וואָס ס אַ בייַטעוודיק און וואָס ס ניט. אזוי יעדער בייַטעוודיק נאָמען סטאַרץ מיט אַ דאָלאַר צייכן. אַזוי אין C מיר זאל זאָגן עפּעס ווי דעם, ינט X = 54. מיר טאָן ניט האָבן צו טאָן אַז ענימאָר אין PHP. מיר קענען נאָר זאָגן $ רענטגענ = 54. און מיר געקענט זאָגן, למשל, אין C, אויב מיר האבן פונט-ינקלודעד די קס50 .ה כעדער טעקע, מיר געקענט זאָגן שטריקל פראַזע = "דאס איז קס50." מיר טאָן ניט האָבן צו טאָן אַז אין PHP, כאָטש. מיר קענען נאָר זאָגן $ פראַזע = "דאס איז קס50." און אין פאַקט, שטריקל איז איצט אַ געבויט-אין דאַטן טיפּ אין PHP, אָדער אלא PHP ונדערסטאַנדס וואָס אַ שטריקל איז. עס ס באַזונדער פון אַ מענגע פון אותיות ווי עס איז אין סי אַלע אייער באַליבט קאַנדישאַנאַל סטייטמאַנץ פון C זענען נאָך פאַראַנען פֿאַר איר צו נוצן. אַזוי קיין גרויס יבערגאַנג דאָרט. מיר קענען סייַ-- מיר קענען האָבן אויב סטייטמאַנץ ווי דעם. אויב $ י 43, אָדער $ ז = 15. אַזוי אַז ס שיין סטראַיגהטפאָרוואַרד. מיר קענען האָבן אויב און אַנדערש. מיר קענען האָבן אויב און אַנדערש אויב. און באַמערקן עפּעס שיין פייַן דאָ, און דעם איז סאָרט פון איינער פון די אַדוואַנטאַגעס פון PHP קעגן C, באַמערקן וואָס פונקציאָנירן מיר ניטאָ ניט ניצן דאָ? מיר 'רע ניצן == צו פאַרגלייַכן אַ בייַטעוודיק, $ נאָמען, צו אַ שטריקל. מיר קען נישט טאָן אַז אין C, רעכט? מיר האבן צו נוצן אַ פֿונקציע גערופֿן סטרקאָמפּ אָדער סטרענדקאָמפּ אָדער קיין פון זייַן Related קאַזאַנז. און אַזוי שוין מיר זען די אַדוואַנידזשיז. מיר טאָן ניט האָבן צו טאָן עפּעס ווי נאַריש אָדער טאָמער ונינטויטיווע ווי רופן אַ פֿונקציע גערופֿן סטרקאָמפּ אויב איך נאָר ווילן צו פּרובירן צי אַ ווערט יקוואַלז אַ שטריקל. איך קען נאָר נוצן יקוואַלז יקוואַלז, ווי איך קען טאָן עפּעס אַנדערש. אַזוי עס ס אַ מייַלע. ווענ עס יז, דורך די וועג, איר זאל זען אַנדערש אויב ווי איין וואָרט, עלסעיף. און אַז ס גוט אין PHP ווי געזונט. אַזוי מאל איר זאל זען אַז. עס ס נישט אַ טייפּאָו. PHP אַקטשאַוואַלי ונדערסטאַנדס עלסעיף. איך טאָן ניט וויסן וואָס זיי באַשלאָסן צו ינסטרומענט אַז, אָבער ווי מיר ווע געזען פילע מאל איבער אונדזער ווידיאס אַזוי ווייַט, מיר פּראָוגראַמערז ליבע עס אויב מיר קענען טאָן זאכן געשווינד, אַזוי געטינג באַפרייַען פון אַז אָרט איז משמעות אַ גרויס מייַלע. אַזוי אַז ס אויב און עלסעיף. מיר אויך האָבן די טערנאַרי אָפּעראַטאָר, צוריקרופן קשיא צייכן צווייפּינטל, פֿאַר טאַקע קורץ פאָרעם אויב אַנדערש אָדער קאַנדישאַנאַל בראַנטשינג. און משמעות, אין דעם, וואָס מיר ניטאָ טריינג צו טאָן דאָ איז באַשטימען די בייַטעוודיק $ בריוו אָדער אמת אָדער פאַלש, דיפּענדינג אויף צי $ וואַר איז אַ אַלפאַבעטיק כאַראַקטער. אזוי דעם איז שיין ענלעך צו יסאַלפאַ אַז מיר ניטאָ באַקאַנט מיט פון סי דאס איז סאָרט פון דעם עקוויוואַלענט אין PHP. די פֿונקציע איז משמעות גערופֿן קטיפּע_אַלפאַ, אָבער אַז ס ווי מיר טאָן עס אין PHP. אַזוי אַלע דעם איז געגאנגען צו זיין איז, אויב $ וואַר איז אַ בריוו, $ בריוו איז אמת. אויב $ וואַר איז ניט אַ בריוו, $ בריוו איז פאַלש. מיר אויך האָבן באַשטימען סטייטמאַנץ נאָך. מיר צוריקרופן די פון C ווי געזונט. אין דער זייער שפּיץ עס, אַז ס ווי מיר טאָן עפּעס ווי באַקומען ינט אָדער באַקומען שטריקל. אַזוי PHP האט אַז געבויט אין. מיר טאָן ניט דאַרפֿן די קס50 ביבליאָטעק ענימאָר. מיר קענען נאָר נוצן די פֿונקציע רעאַדלינע. וואָס אַז ס 'געגאנגען צו טאָן איז דרוקן אויס דעם אָנזאָג, "דיין שטאַט, ביטע, "און דעריבער בלינקינג פּינטלעך ווארטן פֿאַר די באַניצער צו ינפּוט עטלעכע אינפֿאָרמאַציע. איצט באַמערקן וואָס אַנדערש מיר קענען טאָן מיט באַשטימען. אויב איר ווע געניצט עס איידער, איר זאל צוריקרופן אַז באַשטימען איז באגרענעצט שיין פיל צו ינטאַדזשערז און אותיות, אָבער איצט מיר קענען נוצן סטרינגס. און אין פאַקט, די באַשטימען סטאַטעמענט אין PHP איז גאַנץ אַ ביסל מער Flexible ווי זייַן קוזינע פון ​​סי לופּס. פּונקט ווי קאָנדיטיאָנאַלס, אַלע פון אייער אַלט favorites זענען נאָך דאָרט. מיר האָבן בשעת לופּס אַז ציילן 1-100 אין דעם פאַל. מיר האָבן טאָן בשעת לופּס אַז ציילן 1-100, און מיר האָבן פֿאַר לופּס אַז ציילן 1-100. אַזוי קיין גרויס שפּרינגען דאָרט. די סינטאַקס איז שיין פיל פּונקט די זעלבע, חוץ איצט מיר ניטאָ ניצן דאָלאַר צייכן בייַטעוודיק אַנשטאָט פון דיקלערינג ינטאַדזשער וועריאַבאַלז אָדער עפּעס ווי אַז פֿאַר אונדזער קאָונטערס. דאָ ס ווו דאס באַקומען אַ פּלאַץ בעסער ווי C, כאָטש. ערייז. אַזוי צוריקרופן ווען מיר זענען גערעדט וועגן C, אין סדר פֿאַר אונדז צו וואַקסן און ייַנשרומפּן שטעלט פון אינפֿאָרמאַציע, מיר דארף צו סאָרט פון ניט ויסצאָלן צו דעם געדאַנק פון אַ לינגקט רשימה, ווייַל C ערייז זענען פאַרפעסטיקט אין גרייס. מיר קען נישט ייַנשרומפּן זיי. מיר קען נישט וואַקסן זיי. מיר האט צו רעאַללאָקאַטע זיקאָרן און טאָן אַלע דעם מעשוגאַס אָדער נוצן לינגקט רשימות, וואָס נעמען אַרויף גאַנץ אַ ביסל מער פּלאַץ. אבער אין PHP, ערייז זענען ניט פאַרפעסטיקט אין גרייס ענימאָר. זיי קענען וואַקסן און זיי קענען ייַנשרומפּן. אַזוי ווידער, די 20 יאר אַז עקסיסטירט צווישן דער ערשטער מעלדונג פון C און דער ערשטער מעלדונג PHP, מיר באַשלאָסן אַז, איר וויסן, עס וואָלט זיין טאַקע גרויס אויב מיר קען טאָן דעם. און אַזוי מיר ימפּלאַמענטאַד דעם. אַזוי PHP ערייז זענען נישט פאַרפעסטיקט אין נומער, און ווייַל PHP טוט ניט טאַקע האָבן פּראָגראַמיסט פראָנט-facing השגות פון טייפּס, מיר קענען מישן דאַטע טייפּס אין אונדזער ערייז, אויך. אַזוי מיר טאָן ניט אַפֿילו האָבן צו נוצן אַלע ינטאַדזשערז אָדער אַלע Floating ווייזט, מיר קענען האָבן אַ מישן פון אַלע פאַרשידענע מינים אין אַ איין מענגע. דיקלערינג אַ מענגע איז שיין סטראַיגהטפאָרוואַרד. עס ס פּונקט ווי קיין אנדערע בייַטעוודיק. $ נומס = מענגע (1, 2, 3, 4), מענגע ווייל אַ פֿונקציע אַז ס געבויט אין PHP אַז וועט מאַכן אַ מענגע פֿאַר איר. דאס קריייץ אַ מענגע פון ​​פיר וואַלועס, נומערן אין דעם פאַל, גערופֿן $ נומס. און עס ס מער ווי איין וועג צו טאָן עס. און מיר רע געגאנגען צו זען דעם אַ פּלאַץ אין PHP. PHP האט שוין דעוועלאָפּעד דורך פילע פאַרשידענע מענטשן און וואקסט און וואקסט און וואקסט. עס ס יוזשאַוואַלי ניט נאָר צוויי אָדער דרייַ וועגן צו טאָן עפּעס אין PHP, עס ס יוזשאַוואַלי ווי 10 אָדער 20. דאָ ס נאָר אן אנדער פּראָסט וועג צו דערקלערן אַ מענגע. $ נומס = קוואַדראַט קאַנטיקער 1, 2, 3, 4. אזוי דעם איז סאָרט פון ענלעך צו C ס ווינקל בר-- געגרייַזלט בראַסע נאָוטיישאַן, גאַנץ. $ - אָדער עס וואָלט זיין ינט נומס קוואַדראַט בראַקאַץ יקוואַלז געגרייַזלט בראַסע 1, 2, 3, 4. אין PHP עס ס $ נומס = קוואַדראַט בראַקאַץ 1, 2, 3, 4. אבער ביידע פון ​​די יגזאַמפּאַלז דאָ געבן מיר אַ מענגע פון ​​פיר אין דעם פאַל ינטאַדזשערז. וואָס אויב איך ווילן צו שטיפט עפּעס אויף איצט? גוט איך קענען נאָר זאָגן $ נומס 4, וואָס ווידער, מיר ניטאָ נאָך קאַונטינג פון 0 דאָ אין PHP, וואָלט זיין די פינפט עלעמענט פון די מענגע. איך קענען נאָר זאָגן אַז. איך בין נישט געגאנגען צו לייַדן אַ סעג שולד, מחמת מיין מענגע איז נאָר געגאנגען צו וואַקסן צו אַקאַמאַדייט אַז. אַז ס שיין פייַן, רעכט? און אין פאַקט, איך טאָן ניט אַפֿילו דאַרפֿן צו ספּעציפיצירן ווו איך ווילן צו לייגן עס. איך קענען נאָר זאָגן דעם און נאָר שטיפט עס רעכט אויף צו די סוף, אָדער איך קען אַפֿילו נאָר זאָגן $ נומס 20 אָדער 1,000. עס טוט ניט טאַקע ענין. עס ס נאָך נאָר געגאנגען צו שטיפט עס רעכט אויף צו די סוף. אַזוי איך קענען וואַקסן, און אַס-- מיר ניטאָ ניט געגאנגען צו דעקן עס אין דאָ, אָבער איך קען ספּלייס אָדער פּאַס עלעמענטן פון די מענגע ווי געזונט, און די מענגע וועט ייַנשרומפּן צו אַקאַמאַדייט אַז איצט פעלנדיק אָדער ליידיק אָרט. עס ס אן אנדער וועג צו שטיפט עפּעס אַנטו אַ מענגע, וואָס איז אַ פֿונקציע גערופֿן אַררייַ_פּוש. אַזוי ווידער, נאָר דעם געדאַנק פון ווייל קענען צו טאָן זאכן פילע פאַרשידענע וועגן. אַזוי מיר ווע געזען דרייַ פאַרשידענע וועגן איצט צו שטיפט אנדערן עלעמענט אַנטו אַ מענגע. אזוי דעם מוסיף אנדערן עלעמענט צו דעם סוף פון די $ נומס מענגע. און מיר קענען מישן אַרויף אונדזער דאַטן טייפּס. אַזוי איך קען האָבן אַ מענגע פון ​​נישט 1, 2, 3, 4, אָבער 1, אמת, 3, 4, ווו אמת איז אַ באָאָלעאַן, און דעמאָלט אויב איך ווילן צו שטיפט אויף אן אנדער עלעמענט צו אַז מענגע, טאָמער אַ שטריקל, די שטריקל "פינף," איך קען טאָן אַז. און איצט מיין מענגע וואָלט זייַן 1, אמת, 3, 4, פינף. די וואָרט פינף, נישט די ינטעגער 5. אַזוי אַ פּלאַץ פון בייגיקייַט עס. די בייגיקייַט געץ אַפֿילו בעסער, כאָטש, ווייַל PHP האט שטיצן פֿאַר עפּעס גערופֿן אַ אַססאָסיאַטיווע מענגע. און מיר סאָרט פון ווייגלי גערעדט וועגן אַססאָסיאַטיווע ערייז אין C אין דעם קאָנטעקסט פון האַש טישן, ווייַל וואָס אַססאָסיאַטיווע ערייז זענען טאַקע אַלע וועגן זענען געמאכט שליסל ווערט פּאָר מאַפּפּינגס. און אין דעם פאַל, די קייס-- אויב מיר ניטאָ באַקאַנט מיט ערייז פון C, די שליסלען זענען אינדעקס נומערן. 0, 1, 2, 3. און די וואַלועס זענען וואָס מיר געפֿינען אַז מענגע 0, מענגע 1, מענגע 2, און אַזוי אויף. אזוי די שליסלען זענען ינדעקסיז, און די וואַלועס זענען וואָס איז אין אַז מענגע אָרט, ספּעסיפיעד דורך אַז אינדעקס. אבער אין PHP, מיר טאָן ניט האָבן צו טאָן דעם געדאנק פון מענגע 0, מענגע 1, מענגע 2 ענימאָר. מיר קענען איצט נוצן פאַקטיש ווערטער צו מאַפּע שליסלען צו וואַלועס. און אַזוי איך קען זאָגן עפּעס ווי דעם. איך קען שאַפֿן אַ מענגע ניצן די קוואַדראַט קאַנטיקער סינטאַקס ווי גייט. $ פּיצאַז = קוואַדראַט קאַנטיקער "קעז" און דעמאָלט דעם סאָרט פון טאָפּל פייַל נאָוטיישאַן, 8.99, "פּעפּעראָוני," פייַל 10.99-- 9.99, און אַזוי אויף. און אַזוי וואָס ס געגאנגען אויף דאָ? וואָס בין איך טאקע טאן? איך בין קריייטינג שליסל ווערט פּאָר מאַפּפּינגס. אזוי אַנשטאָט פון געזאגט, למשל, פּיצאַז 0, ברעקלעך 1, פּיצאַז 2, איך קענען איצט זאָגן פּיצאַז קעז, פּיצאַז פּעפּעראָוני, און אָפּשיקן צו די וואַלועס פֿאַרבונדן מיט זיי. אזוי דאָ זענען אונדזער שליסלען אין גרין. קעז, פּעפּעראָוני, גרינס, בופלאָקס הינדל. דאָ איז די פייַל אַז מאכט דעם שליסל ווערט פּאָר מאַפּינג. און דעריבער דאָ זענען די וואַלועס אין אַז מענגע אָרט. אַזוי עס ס ווי געזאגט מענגע 0 יקוואַלז 8.99. דער שליסל איז 0. די ווערט איז 8.99. איך קענען איצט זאָגן מענגע קעז, אָדער אין דעם פאַל פּיצאַז קעז, קעז איז די שליסל, און וואָס איך געפֿינען אין פּיצאַז קעז איז 8.99. אַז ס די ווערט אַז איך געפֿינען עס. אַזוי איך קענען זאָגן זאכן ווי. $ פּיצע קעז = 7.99. זאָגן איך בין בעת ​​אַ פאַרקויף. איך ווילן דיס-- איך ווילן צו פאַלן די פּרייַז פון די קעז פּיצע. אָדער איך קענען נוצן די גרינס פּיצע ווי טייל פון אַ צושטאַנד, אָדער איך קענען לייגן אַ נייַ עלעמענט צו מיין מענגע, פּונקט ווי איך קען טאָן ביז אַהער. איך קענען לייגן אַ נייַ עלעמענט צו דעם אַססאָסיאַטיווע מענגע מיט די שליסל "בייקאָן" און די ווערט 13.49. אבער דעם סאָרט פון ינטראַדוסיז אַ פּראָבלעם, אויב איר טראַכטן וועגן עס פֿאַר אַ רגע. ווי וואָלט מיר יטעראַטע דורך דעם מענגע? רעכט? אין C, מיר וואָלט נאָר האָבן אַ פֿאַר שלייף, טיפּיקלי, אַז וואָלט לויפן פון 0 צו די גרייס פון דעם מענגע מינוס 1. די מענגע האט N יסודות אין ביי, די גילטיק ינדעקסיז זענען 0 צו N מינוס 1. אַזוי מיר קען נוצן אַ פֿאַר שלייף צו שריט דורך יעדער איין עלעמענט. אבער אַז ס ניט טאַקע די פאַל ענימאָר, רעכט? איצט ווו מיר האָבן שליסל ווערט פּאָר מאַפּפּינגס ווו די שליסלען זענען ווערטער, ווי טאָן מיר יטעראַטע איבער אַלע פון ​​די ווערטער? נו, גליק, PHP האט אַ וועג צו האַנדלען מיט דעם אויך, און אַזוי מיר וועט שפּרינגען צוריק צו לופּס פֿאַר אַ רגע צו באַקענען 1/4 מין פון שלייף אַז יגזיסץ אין PHP גערופֿן אַ פאָרעאַטש שלייף. און וואָס אַ פאָרעאַטש שלייף טוט איז עס ס בייסיקלי די זעלבע געדאַנק. איר קענען ניצן עס פֿאַר קיין סאָרט פון מענגע. אבער עס ס בייסיקלי די זעלביקער געדאַנק ווי אַ פֿאַר שלייף, חוץ אַנשטאָט פון ניצן אינדעקס נומערן, איר נאָר האָבן דעם טשודנע סינטאַקס ווו איר רופן יעדער איין עלעמענט אַ נאָמען פֿאַר די צוועקן פון דעם שלייף. אַזוי אין דעם פאַל, פאָרעאַטש ($ מענגע ווי $ שליסל). באַסיקאַללי, ווי אַז באַמערקן הערות, ין פון אַז פאָרעאַטש שלייף, עס ס געגאנגען צו גיין איבער יעדער איין עלעמענט פון $ מענגע, וואָס איז טיפּיקלי געגאנגען צו זיין אַ אַססאָסיאַטיווע מענגע, אָבער קענען טאַקע זיין קיין סאָרט פון מענגע אַז איר ווילן אין PHP. און יעדער מאָל אַז אין אַ פֿאַר שלייף איר זאל האָבן געזאגט $ מענגע קוואַדראַט בראַקאַץ $ איך, איר קען נאָר זאָגן $ שליסל. אַזוי אַז $ שליסל ווערט אַ אַליאַס פֿאַר יעדער אינדעקס פון דיין PHP אַססאָסיאַטיווע מענגע, און אַזוי איר קענען נוצן עס ווי אַז. אַזוי פֿאַר בייַשפּיל, מיר ווע איצט גאַט אונדזער פּיצאַז מענגע. איך ווע מין פון טאַקט עס אין די ווינקל דאָרט אַזוי מיר קענען נוצן עס צו טאָן אַ שנעל בייַשפּיל. אויב איך זאָגן פאָרעאַטש ($ פּיצאַז ווי $ פּיצע), נו, וואָס ס געשעעניש? נו, איך בין געגאנגען צו יטעראַטע דורך יעדער איין עלעמענט פון די מענגע $ פּיצאַז, און אין אַזוי טאן, איך בין געגאנגען צו רופן יעדער עלעמענט, ווען איך בין ין פון דעם גוף פון אַז פֿאַר שלייף, $ פּיצע. אַזוי אַז ס סאָרט פון אַ שטיין-אין, צוריקרופן, אַז $ פּיצע איז אַ שטיין-אין פֿאַר זאגן $ פּיצאַז קוואַדראַט בראַקאַץ $ איך אויב מיר זענען ניצן אַ פֿאַר שלייף, ווו מיר קען גיין פון $ איך = 0 צו, אין דעם פאַל, $ איך = 3. אויב מיר האבן נישט האָבן שליסל ווערט פּערז דאָ, דעם וואָלט זיין עלעמענט 0, 1, 2, 3, און מיר וואָלט נוצן אַ פֿאַר שלייף צו גיין $ פּיצאַז 0, $ פּיצאַז 1, $ פּיצאַז 2, $ פּיצאַז 3. אַזוי איצט בלויז $ פּיצאַ איז סאַבסטיטוטינג פֿאַר אַז יחיד שליסל. אזוי וואָס איז דעם געגאנגען צו דרוקן אויס? איך בין דרוקן אויס $ פּיצע. וואָס בין איך געגאנגען צו געפינען אַט-- אויב איך דרוקן אויס $ פּיצאַז, $ איך? רעכט? אויב איך בין געגאנגען צו דרוקן אויס די ITH עלעמענט פון פּיצאַז, וואָס בין איך געגאנגען צו דרוקן? איך בין געגאנגען צו דרוקן אויס די וואַלועס אין אַז אָרט, רעכט? ווי אויב מיר זענען טאן דעם אין דעם קאָנטעקסט פון C, מיר טאָן ניט יוזשאַוואַלי נוצן אונדזער יטעראַטאָר בייַטעוודיק, ינט איך = 0, איך איז ווייניקער ווי 3, איך ++, צו דרוקן אויס 0, 1, 2, 3. מיר 'רע דרוקן אויס מענגע 0, מענגע 1, מענגע 2, מענגע 3. און אַזוי וואָס דעם פּרינץ אויס איז דעם. עס ס דער רשימה פון פּרייסיז. 8.99, 9.99, 10.99, 11.99. איצט אַ שנעל טאָן דאָ. א פאָרעאַטש שלייף טוט ניט דאַווקע דרוקן אויס זאכן אין סדר. עס ס ניט געראַנטיד. עס יוזשאַוואַלי טוט. עס ס יוזשאַוואַלי באזירט אויף די סדר אין וואָס יסודות זענען צוגעגעבן צו די מענגע, אַזוי נאָר בער אַז אין מיינונג. עס זאל ניט זיין אין סדר. אבער אַ פאָרעאַטש שלייף וועט יטעראַטע אַריבער יעדער איין עלעמענט פון די מענגע אין קשיא. אין דעם פאַל, ווידער, אַז מענגע איז $ פּיצאַז. איך קענען טוישן די סינטאַקס, כאָטש, אויב איך ווילן ביידע דעם שליסל און די ווערט. אָנשטאָט זאגן $ פּיצאַז ווי $ פּיצע, איך קענען זאָגן דעם. און אויב איר קוק אין וואָס איך ווע כיילייטיד אין גרין דאָ, עס קוקט ווי אַ שליסל ווערט פּאָר מאַפּינג. און אַזוי אויב יאָו-- אַפֿילו אויב איר זענט נישט לעגאַמרע זיכער וואָס עס ס געגאנגען צו טאָן, איר קענען מיסטאָמע טרעפן אַז $ טאַפּינג איז געגאנגען צו זיין די שליסל אין דעם פאַל און $ פּרייַז איז געגאנגען צו זיין די ווערט. אזוי איך בין סאַבסטיטוטינג איצט יעדער עלעמענט פון $ פּיצאַז ווי אַ שליסל ווערט פּאָר, און איצט איך קענען אָפּשיקן צו דעם שליסל און די ווערט, וואָס זאל אין האַנטיק, למשל, ווי גייט. "א גאַנץ" - דאָס איז אַ פּלאַץ פון דרוק געגאנגען אויף הערע-- "א גאנצער" טאַפּינג "פּיצע קאָס $" פּרייַז, און דעמאָלט איך דרוקן אויס אַ צייַט און אַ באַקקסלאַש ן. אַזוי איצט, באַמערקן ווידער איך האָבן צוטריט צו אַ שליסל, $ טאַפּינג, און אַ ווערט, $ פּרייַז. אזוי קענען איר טרעפן וואָס דאָס איז געגאנגען צו דרוקן אויס? עס ס אַ פּלאַץ פון דרוק סטייטמאַנץ, אָבער עס ס נאָר איין באַקקסלאַש ן, אַזוי עס ס געגאנגען צו דרוקן עפּעס אויף אַ ענטירע-- אויף אַ איין שורה פון קאָד. אויב איך קענען אָפּשיקן צו די שליסל און די ווערט, דעריבער איצט, אַנשטאָט פון נאָר ווייל קענען צו דרוקן אויס די פּרייסיז, איך קענען דרוקן אויס עפּעס ווי דעם. "א גאַנץ קעז פּיצע קאָס $ 8.99." און איצט איך בין ניצן אַלע פון ​​די קייס-- קעז, פּעפּעראָוני, גרינס, בופלאָקס טשיקקענ-- און די וואַלועס. 8.99, 9.99, 10.99, 11.99 אזוי אַז ס נאָר אַ אַנדערש וועג צו טאָן אַ פאָרעאַטש שלייף אַז אָנשטאָט פון נאָר געבן איר צוטריט צו די וואַלועס, עס נאָר גיט יאָו-- עס גיט איר צוטריט צו די שליסלען און די וואַלועס. אַזוי דרוקן אויס אינפֿאָרמאַציע. איך ווע שוין געטאן עס אַ פּאָר פון פאַרשידענע וועגן, איר זאל האָבן באמערקט. די צוויי פֿעיִקייטן מיר'ווע בפֿרט סין זענען דרוקן און עקאָו. און פֿאַר שיין פיל אַלע ינטענץ און צוועקן, זיי ניטאָ פּונקט די זעלבע. טהיי'רע-- עס ס אַ זייער סאַטאַל חילוק אַז ס ניט אַפֿילו ווערט געטינג אין, אָבער בייסיקלי אומעטום איר קענען נוצן דרוק איר קענען מיסטאָמע נוצן ווידערקאָל ווי געזונט. און אַז ס ניט די בלויז צוויי. PHP האט אַ פּלאַץ פון פאַרשידענע וועגן צו דרוקן דאס אויס, און עס אויך האט וועגן צו ויסשטימען וועריאַבאַלז אין די מיטל פון שטריקל. אַזוי צוריקרופן פון C, טאָן איר געדענקען וואָס פונקציאָנירן מיר קענען נוצן צו פאַרבייַטן וועריאַבאַלז זיך זאכן מיר ווילן צו דרוקן אויס? איר מיסטאָמע נוצן דעם פֿונקציע גאַנץ אַ פּלאַץ. פּרינטף, רעכט? אַזוי דאָס איז וואָס מיר האט איידער ין פון די קאָנטעקסט פון אונדזער פאָרעאַטש שלייף. מיר האט די פינף באַזונדער דרוקן סטייטמאַנץ, ווייַל אַז איז געווען דער בלויז וועג איך טאַקע געוואוסט אין די צייַט ווי צו דרוקן אויס אַרטיקלען. איך האט ניט וויסן ווי צו ויסשטימען די בייַטעוודיק $ טאַפּינג אין מיין PHP קאָד. נו, אויב איך נאָר גענומען אַ ווילד טרעפן, פּרינטף, עס אַקשלי וואָלט האָבן געארבעט. פּרינטף איז אַ פֿונקציע אַז איך קען נוצן אין PHP, פּונקט ווי איך קענען נוצן עס אין סי און אַזוי עפּעס ווי דעם, פּרינטף, ווידער, מיר ניטאָ באַקאַנט מיט וואָס. דער ערשטער% s איז ריפּלייסט מיט די ווערט פון $ טאַפּינג. די רגע% s איז ריפּלייסט מיט די ווערט פון $ פּרייַז. און אַזוי איך בין ינטערפּעללאַטינג, וואָס איז נאָר אַ פאַנטאַזיע וועג פון זאָגן איך בין סטיקינג די וועריאַבאַלז אין אַז אָרט. אזוי איך בין פּלאַגינג אין $ טאַפּינג ווו די רויט% s איז און $ פּרייַז ווו די בלוי% s איז, און דעמאָלט איך וואָלט באַקומען דעם אָנזאָג, "א גאַנץ קעז פּיצע קאָס $ 8.99." ניט דער בלויז וועג איך קענען טאָן עס, כאָטש. אפֿשר איך וואָלט ווילן צו נוצן דעם אופֿן. דעם איז אַקטשאַוואַלי וואָס ס מערסט קאַמאַנלי גערופֿן בייַטעוודיק ינטערפּעללאַטיאָן. איך קען נוצן אַ ווידערקאָל. איך קען נוצן אַ דרוק צו, ווי מיר וועט זען. אבער וואָס ס געשעעניש דאָ? ערשטער פון אַלע, איך האב צו אַנטלויפן דער דאָלאַר צייכן. ווייַל געדענקען, ווען מיר זענען טאקע דרוק אויס די פּרייסיז פון די פּיצאַז, איך איז געווען אַקטשאַוואַלי formatting זיי ווי געלטיק Figures מיט אַ דאָלאַר צייכן. אבער מיר ניטאָ ניצן דאָלאַר וואונדער אויך צו פאָרשטעלן בייַטעוודיק נעמען אין PHP, און אין באַזונדער ווען איך בין ניצן דעם אופֿן פון די געגרייַזלט בראַסע בייַטעוודיק ינטערפּעללאַטיאָן אופֿן, איך דאַרפֿן צו אַנטלויפן מיין דאָלאַר צייכן אַזוי עס טוט ניט טראַכטן איך בין גערעדט וועגן אַ בייַטעוודיק. עס ס געגאנגען צו אַקטואַללי, ממש דרוקן אַ דאָלאַר צייכן. אַזוי סאָרט פון אַנאַלאָגיזע עס צו וואָס איר זען אין די סוף דאָרט. עס טוט ניט אַקטשאַוואַלי דרוק באַקקסלאַש N, רעכט? עס פּרינץ אויס אַ נייַ שורה כאַראַקטער. דאס יס-- עס ס ניט געגאנגען צו דרוק באַקקסלאַש דאָלאַר צייכן, עס ס געגאנגען צו דרוקן אויס פּונקט אַ דאָלאַר צייכן כאַראַקטער. זעלביקער געדאַנק. עסקאַפּע סיקוואַנסיז, וואָס די זאכן זענען גערופֿן. אבער באַמערקן אַז איך בין ניט טאן קיין סאָרט פון s% סאַבסטיטיושאַנז, איך בין נאָר ממש פּלאַגינג אין די וועריאַבאַלז. און אַזוי אין טהיס-- וואָס וואָלט פּאַסירן דאָ איז אַז די ווערט פון $ טאָפּפּינג-- ווידער, נאָר בעכעסקעם מיט וואָס מיר ווע שוין גערעדט וועגן אַזוי פאַר-- קעז וואָלט באַקומען פּלאַגד אין עס. און $ פּרייַז וואָלט זיין וועלכער ווערט איז ביי פּיצאַז, קוואַדראַט בראַקאַץ, קעז, וואָס איז געווען 8.99. און אַזוי דעם וואָלט אויך דרוקן אויס "א גאַנץ קעז פּיצע קאָס $ 8.99." און ווי איך געזאגט, איך קען נוצן דרוק דאָ אַנשטאָט פון ווידערקאָל, און די פונקטיאָנאַליטי זייַן שיין פיל פּונקט די זעלבע. עס וואָלט דרוקן אויס די זעלבע זאַך. עס ס אן אנדער וועג צו טאָן עס, און דאָס איז אן אנדער מייַלע פון PHP ארבעטן מיט סטרינגס. מיר קענען טאָן שטריקל קאָנקאַטענאַטיאָן. מיר קען טאָן דאָס אין C, אויך, ניצן אַ פֿונקציע גערופֿן סטרקאַט, אָבער ווידער, מיר האט צו רוף באַזונדער פֿעיִקייטן. עס איז געווען דעם גאַנץ באַלאַגאַן צו טאָן. מיר האט צו פונט-אַרייַננעמען סטרינג.ה. עס איז געווען אַ פּראָדוקציע, רעכט? אָבער איצט איך קענען נאָר נוצן דעם פּינטעלע אָפּעראַטאָר צו קאַנקאַטאַנייט סטרינגס צוזאַמען. אזוי איך בין קאָנקאַטענאַטינג "א גאַנץ" און דעמאָלט וועלכער די ווערט פון $ טאַפּינג איז, און דעמאָלט אנדערן שטריקל, "פּיצע קאָס $" און דעמאָלט קאָנקאַטענאַטינג וועלכער די ווערט פון $ פּרייַז איז, און דעמאָלט אין די זייער סוף איך בין טאַקקינג אויף צייַט באַקקסלאַש ן. און אַזוי דעם וואָלט אויך דרוקן אויס "א גאַנץ" - ווידער, אויב מיר ניטאָ גערעדט וועגן דער ערשטער עלעמענט פון וואָס פּיצאַז אַררייַ-- "א גאַנץ קעז פּיצע קאָס $ 8.99." פּעריאָד, באַקקסלאַש N, ווידער, מיט די $ טאַפּינג און $ פּרייַז סאַבסטיטוטינג פֿאַר וואָס מיר האבן ספּעסיפיעד אין אונדזער פאָרעאַטש שלייף ווי דער שליסל ווערט פּאָר מאַפּינג. PHP קענען שעפּן פֿעיִקייטן. פֿעיִקייטן זענען סאָרט פון ינטאַגראַל צו C, ווי מיר געזען. ווי וועריאַבאַלז, מיר טאָן ניט דאַרפֿן צו ספּעציפיצירן די צוריקקומען טיפּ פון די פֿונקציע, ווייַל עס טוט ניט טאַקע ענין. און מיר טאָן ניט ספּעציפיצירן די דאַטע טייפּס פון קיין פּאַראַמעטערס, ווייַל זיי טאָן ניט טאַקע ענין, ווי מיר ווע געזען אין PHP. יעדער פֿונקציע איז באַקענענ מיט די פֿונקציע קיווערד. אַז ס ווי מיר אָנווייַזן צו PHP אַז וואָס מיר ניטאָ גערעדט וועגן איז אַ פֿונקציע. און מיר טאָן ניט האָבן צו האַנדלען מיט הויפּט אין אַלע, ווייַל די יבערזעצער, די PHP יבערזעצער, אַרבעט פון שפּיץ צו דנאָ, ראַגאַרדלאַס. אויב עס זעט איר קענען מאַכן אַ פֿונקציע רופן, עס וועט גיין געפינען די פֿונקציע רופן, אַפֿילו אויב עס קומט שפּעטער. אבער עס ס געגאנגען צו לייענען פון שפּיץ צו דנאָ, אַזוי מיר טאָן ניט דאַרפֿן צו ספּעציפיצירן, דאָ ס ווו איר אָנהייב. איר אָנהייבן אויף שורה 1 פון דיין PHP און אַרבעט אַראָפּ פון דאָרט. אזוי דאָ איז ווי מיר וואָלט מאַכן אַ פֿונקציע גערופֿן האַרד_סקוואַרע. עס משמעות נעמט איין פּאַראַמעטער, וואָס איך בין פאַך $ רענטגענ. דעם פֿונקציע איז קאָמפּליצירט נאָר צו אילוסטרירן פאַרשידן זאכן. מיר נאָך האָבן צוריקקומען וואַלועס. איך בין ניצן אַ פֿאַר שלייף דאָ. אבער עס ס בייסיקלי פּונקט, וואָס דעם אַמאַונץ צו איז נאָר $ רענטגענ מאל $ רענטגענ. וואָס איך בין אַקטשאַוואַלי טאן איז נאָר אַדינג רענטגענ צו 0 רענטגענ מאל אָדער $ X צו נול $ רענטגענ מאל. אבער עס ס Effectively פּונקט די זעלביקער ווי מאַלטאַפּלייינג $ רענטגענ מאל $ רענטגענ. איך קענען נאָך צוריקקומען אַ ווערט, אין דעם פאַל $ רעזולטאַט, און איך ווע געמאכט אַ פֿונקציע אין PHP. דאָ ס ווי איר זאל נוצן עס אין קאָנטעקסט. אַזוי אפֿשר איך בין ין פון עטלעכע PHP טעקע. באַמערקן אין בלוי עס אַז איך ווע געניצט מיין PHP דעלימיטערס, ווינקל קאַנטיקער קשיא צייכן PHP. אין צווישן די זענען אַלע פון די PHP אַז איך ווילן צו שרייַבן. אזוי איך בין משמעות געגאנגען צו געט-- איך בין געגאנגען צו פּינטלעך דער באַניצער צו געבן מיר אַ נומער, קראָם אַז בייַטעוודיק, קראָם אין וואָס בייַטעוודיק $ רענטגענ, וועלכער זיי געגעבן מיר. דעמאָלט איך בין געגאנגען צו ווידערקאָל האַרד_סקוואַרע פון ​​וואָס ווערט, און משמעות געגאנגען צו שטיפט אויף אַ נייַ שורה ווי געזונט, און דעמאָלט שפּעטער אויף איך וועט דעפינירן די פֿונקציע האַרד_סקוואַרע אַזוי אַז ווען איך מאַכן די רוף צו האַרד_סקוואַרע, עס ווייסט וואָס איך בין גערעדט וועגן. איצט, איך קען אויך טאָן עפּעס ווי דעם. דאס איז אַ ביסל אַנדערש. עס ס כּמעט פּונקט די זעלבע ווי וואָס מיר געזען פריער, חוץ אַנשטאָט פון געזאגט נאָר $ רענטגענ דאָרט ווי דער פּאַראַמעטער צו האַרד_סקוואַרע, איך בין אַזוי צו זאָגן $ רענטגענ = 10. אזוי דעם איז אַ בייַשפּיל פון דעפענסיווע פּראָגראַממינג, גואַרדינג דיין מגילה קעגן בייזע ניצערס. דאס איז איין וועג צו טאָן עטלעכע טעות טשעק אַז מיר האבן ניט טאַקע האָבן ווי אַ אָפּציע אין סי מיר קען קיינמאָל ספּעציפיצירן די ניט ויסצאָלן ווערט פון עפּעס. מיר שטענדיק האט צו טשעק צי די, למשל, אויב מיר געמאכט אַ רוף צו געצטרינג, עס איז געווען רובֿ געהעריק אויב מיד נאָך מיר אָפּגעשטעלט אַז, מיר אָפּגעשטעלט צי די שטריקל אַז דער באַניצער געגעבן אונדז איז ניט גלייַך צו נאַל, ווייַל מיר טאָן ניט ווילן צו אָנהייבן ארבעטן מיט אַ נאַל שטריקל. דאָ, דאָס איז אַ וועג צו היטן קעגן אַז. אויב דער באַניצער טוט נישט צושטעלן אונדז עפּעס יז, וואָס זענען מיר געגאנגען צו טאָן? גוט, מיר וועט נאָר זאָגן וועלכער זיי האבן ניט צושטעלן אונדז, מיר ניטאָ נאָר געגאנגען צו צאַפּן אין 10 אַנשטאָט. אַזוי אויב זיי האבן ניט געבן אונדז אַ ווערט, נאָר נוצן 10 דורך ניט ויסצאָלן. און אַזוי דאָ, באַמערקן אַז איך בין מאכן אַ רוף צו האַרד_סקוואַרע, אָבער דאָרט ס קיין פּינטלעך צו דער באַניצער, רעכט? איך בין נאָר מאכן אַ ליידיק רופן. אבער מיין פונקציאָנירן האַרד_סקוואַרע איז יקספּעקטינג אַ פּאַראַמעטער. וואָס איז דאָס געגאנגען צו דרוקן אויס? עס ס געגאנגען צו דרוקן אויס 100, רעכט? ווייַל דער באַניצער האט נישט געבן מיר עפּעס. און אַזוי איך בין נאָר געגאנגען צו יבערנעמען אַז 10-- 10 איז די ניט ויסצאָלן ווערט. און אַזוי דעם וואָלט דרוקן אויס 100 אויף זייַן אייגן שורה. PHP טעקעס טאָן ניט האָבן צו זייַן נאָר אַ איין טעקע. איר קענען פאַרבינדן קייפל טעקעס צוזאַמען, פּונקט ווי איר קענען אין סי די וועג מיר האבן אַז אין C איז טיפּיקלי צו טאָן אַ #ינקלודע צו באַקומען כעדער טעקעס פּולד אין. מיר טאָן ניט טאָן אַז אין PHP. מיר טאָן עפּעס גערופֿן רעקווירע_אָנסע. און דעמאָלט דאָרט ס דעם גאַנץ זאַך, וואָס ס דעם __דיר__? אַז ס נאָר אַ ספּעציעל בייַטעוודיק, אָדער ספּעציעל קעסיידערדיק, טאַקע, אַז ספּעסיפיעס וואָס דיין קראַנט Directory איז. און אַזוי עס ס געגאנגען צו קוקן אין אייער קראַנט Directory פֿאַר אַ טעקע געהייסן קס50.פפּ אין דעם בייַשפּיל דאָ, און עס ס געגאנגען צו שטעקן אַז טעקע אין די שפּיץ פון דיין PHP פּראָגראַם, אַסומינג אַז איר שטעלן די דאַרפן אַמאָל שורה אין די שפּיץ פון דיין PHP טעקע. אַזוי PHP איז בפֿרט געניצט, אָבער נישט אויסשליסלעך געוויינט, ווי אַ שפּראַך פֿאַר וועב-באזירט פּראָגראַממינג. אַז ס 'טאַקע ווי עס געקומען צו זיין. אבער עס איז אַ פול שפּראַך, ווי מיר ווע געזען. מיר ווע געזען שיין פיל אַלע די זאכן וואָס עס קענען טאָן וואָס זענען ענלעך צו C, און עס קענען טאָן אַ כעק פון אַ פּלאַץ מער ווי אַז. אבער ווייַל עס ס אַ פול שפּראַך און מיר קענען טאָן באַפֿעלן שורה פּראָגראַממינג אין עס. מיר קענען לויפן באַפֿעלן שורה מגילה. אַלע אַז ס required צו לויפן אַ באַפֿעל שורה פּראָגראַם אַז ס געשריבן אין PHP איז אַז איר האָבן אַ PHP יבערזעצער. אַזוי עס ס סאָרט פון ענלעכער צו ווייל אַ קאַמפּיילער אויף אייער סיסטעם אויב איר ווילן צו צונויפנעמען דיין C קאָד צו ווענדן עס אין עקסעקוטאַבלע טעקעס. איר דאַרפֿן צו האָבן אַ PHP יבערזעצער אַז יגזיסץ אויף דיין סיסטעם אַזוי אַז איר קענען טייַטשן PHP טעקעס. אַסומינג איר טאָן, און יוזשאַלי דעם יבערזעצער איז גערופֿן PHP, און עס ס יוזשאַוואַלי באַנדאַלד מיט רובֿ דאַונלאָודז אָדער ינסטאַליישאַנז פון PHP אַז איר קענען באַקומען אָנליין, און אוודאי דער נאָמען פֿון דער PHP יבערזעצער מיר האָבן אין קס50, ייד. כל איר טאָן איז טיפּ PHP טעקע. און וואָס דיין פּראָגראַם ס געגאנגען צו טאָן איז עס ס געגאנגען צו לויפן דורך די יבערזעצער, עס ס געגאנגען צו איגנאָרירן אַלץ אַז ס ניט אין צווישן קשיא מאַרק-- אָדער, ווינקל קאַנטיקער קשיא צייכן PHP, די PHP דעלימיטערס, און דרוקן עס אויס, און עס וועט טייַטשן און ויספירן די קאָד ין פון דיין PHP דעלימיטערס. אַזוי לאָזן ס קנאַל איבער צו קס50 ייד און האָבן אַ קוק אין אַ פּאָר פון PHP טעקעס, פליסנדיק אַ פּאָר פון PHP טעקעס, אין באַפֿעלן שורה צובינד פון קס50 ייד. אַזוי דאָ מיר זענען אין קס50 ייד, און איך ווע גענומען די פרייַהייַט פון עפן אַ טעקע געהייסן העללאָ1.פפּ. און משמעות, די אינהאַלט פון דעם טעקע זענען פּונקט די PHP דעלימיטערס דאָרט, און אין צווישן, ווידערקאָל ("העלא, וועלט"). דעם איז אַ שיין פּשוט PHP פּראָגראַם. איך בין נאָר געגאנגען צו מעגילע אַראָפּ צו מיין וואָקזאַל פֿענצטער דאָ, און איך בין געגאנגען צו דרוקן PHP העללאָ1.פפּ, שלאָגן אַרייַן. העלא, וועלט. אַז ס מיסטאָמע וואָס מיר זענען יקספּעקטינג עס צו טאָן, רעכט? זאל ס גיין אַרויף און נעמען אן אנדער קוק אין אַ פּראָגראַם. העללאָ2.פפּ. שיין פיל דער זעלביקער זאַך, נישט אַ פּלאַץ געגאנגען אויף דאָ. דאס מאָל, כאָטש, איך בין געגאנגען צו פּינטלעך דער באַניצער צו געבן מיר זייער נעמען. איך בין ניצן אַז רעאַדלינע פֿונקציע ווידער. $ נאָמען = רעאַדלינע. אַז ס די פּינטלעך, "וואָס איז דיין נאָמען?" משמעות איך בין דרוקן עס אויף זייַן אייגן שורה. און דעריבער, אַזוי די שורה אונטן וואָס וועט זיין די פּינטלעך ווו דער באַניצער קענען אַרייַן זייער נאָמען. און דעמאָלט איך בין ניצן אַ קליין ביסל פון בייַטעוודיק ינטערפּעללאַטיאָן דאָ אויף שורה 3 צו דרוקן אויס "העלא" און וועלכער דער באַניצער טייפּס. אזוי דעם איז ענלעכער צו זאגן, העלא, קאָמע,% s אויב מיר זענען ניצן פּרינטף אין סי אַזוי לאָזן ס גיין און טייַטשן דעם פּראָגראַם. אַזוי ווידער, איך וועט מעגילע אַראָפּ צו מיין וואָקזאַל פֿענצטער. PHP העללאָ2.פפּ. וואָס איז דיין נאָמען? דאַג. העלא, דאַג. איך אויך האָבן אן אנדער טעקע גערופֿן העללאָ3.פפּ. איך בין געגאנגען צו קלאָר מיין פאַרשטעלן מיט קאָנטראָל ל, און איך בין געגאנגען צו ויספירן אַז. וואָס איז דיין נאָמען? דאַג. העלא, דאַג. אַזוי די נאַטור איז יידעניקאַל צו העללאָ2.פפּ, אָבער וואָס איז עס העללאָ3.פפּ? נו, דאָ ס די חילוק. אין דעם פאַל, באַמערקן אַז אויף שורה 1 דאָ, איך האָבן עפּעס אַז ס 'נישט אין צווישן די PHP דעלימיטערס. איך בין נאָר דרוקן אָוט-- אָדער איך נאָר טייפּט, "וואָס איז דיין נאָמען?" ווען די PHP יבערזעצער זעט דעם, עס האט קיין געדאַנק ווי צו טייַטשן עס ווי PHP, און אַזוי אַנשטאָט פון פאַילינג, עס ס נאָר געגאנגען צו שפּייַען עס אויס. אַזוי באַמערקן אויף שורה 3 איצט, מיין רוף צו רעאַדלינע, דאָרט ס קיין פּינטלעך ענימאָר. איך בין נאָר טאַקע געגאנגען טאָ-- ווען די PHP יבערזעצער זעט דעם, עס ס געגאנגען צו דרוקן אויס "וואָס איז דיין נאָמען?" דעמאָלט עס זעט, אָה, גוט, הערע'ס-- אַלץ אַנדערש איז געגאנגען צו זיין ינטערפּראַטאַד ווי PHP, אַזוי אַז ס וואָס דעם אַרבעט. איך טאָן ניט האָבן צו דאַווקע פּינטלעך דער באַניצער טאָ-- ין פון רעאַדלינע, איך קען נאָר האָבן עס אַרויס פון די PHP דעלימיטערס און לאָזן די יבערזעצער צו נאָר דרוקן עס אויס פֿאַר מיר. אַזוי איר טאָן ניט אַקטשאַוואַלי נאָר האָבן צו האָבן איינער שטעלן פון PHP דעלימיטערס אין דיין פּראָגראַם. איר קענען אַקטשאַוואַלי האָבן עטלעכע פון ​​זיי, עפן און קלאָוזינג זיי ווי דארף. אַזוי לאָזן ס נעמען אַ קוק אין אַ פּאָר פון מגילה אין קס50 ייד ווו מיר אילוסטרירן דעם געדאַנק פון בעת קייפל שטעלט פון דעלימיטעד PHP. גוט, אַזוי איך 'ווע אָפּענעד אַ טעקע דאָ גערופֿן אַדד1.פפּ. און באַמערקן וואָס ס געשעעניש דאָ. פּונקט ווי איידער, איך האָבן אַ איין PHP שטעלן פון דעלימיטערס. איך בין געגאנגען צו דרוקן אויס די אָנזאָג, "ביטע געבן מיר אַ נומער." דעמאָלט איך בין געגאנגען צו לייענען אַ שורה און קראָם עס אין די בייַטעוודיק $ נומ1. דעמאָלט איך בין געגאנגען צו דרוקן אויס ווידער. געבן מיר אַ רגע נומער. לייענען אַ שורה פון דער באַניצער, קראָם וועלכער זיי טייפּט אין אין $ נומ2. שטעלן זיי צוזאַמען און קראָם אַז רעזולטאַט אין אַ בייַטעוודיק געהייסן $ סאַכאַקל, און דעמאָלט דרוקן אויס, "די סאַכאַקל פון די צוויי נומערן איז, "און דעריבער ינטערפּעללאַטע עס די בייַטעוודיק $ סאַכאַקל. אַזוי לאָזן ס נאָר לויפן דעם דורך די יבערזעצער צו באַשטעטיקן אַז דאָס איז וואָס מיר דערוואַרטן. PHP אַדד1.פפּ. ביטע געבן מיר אַ נומער, 3. ביטע געבן מיר אַ רגע נומער, 4. די סאַכאַקל פון די צוויי נומערן איז 7. אַז ס 3 פּלוס 4. גוט? אַזוי גאָרנישט טעראַבלי פאַנטאַזיע עס. און איצט לאָזן ס עפענען אַרויף אַדד2.פפּ. דאָ, איך ווע גאַט אַ פּאָר פון PHP דעלימיטעד שטעלט עס, רעכט? שורות 1, 3-- שורות 1 און 3 האָבן קיין PHP דעלימיטערס. אַזוי ווען די יבערזעצער זעט זיי, עס ס נאָר געגאנגען צו שפּייַען אויס פּונקט וואָס איך האָבן טייפּט עס. אַזוי אַז ס ווו איך בין טאן אַלע מיין פּראַמפּטינג. אויף שורות 2 און 4, מיר זען די זייער באַקאַנט $? PHP סאָרט פון דעלימיטערס, אַזוי די צוויי שורות זענען געגאנגען צו ויספירן ווי PHP. און דעמאָלט אויף שורה 5, איך האָבן דעם טשודנע זאַך רעכט דאָ, רעכט? דעם ווינקל קלאַמער קשיא צייכן גלייַך צייכן. איך וועט אַפֿילו Zoom אין אַ קליין ביסל ווייַטער. איר קענען זען דעם איז וואָס איך בין גערעדט וועגן רעכט דאָרט, דעם $? =. עס טורנס אויס אַז עס ס אַזוי פּראָסט אַז די סיבה אַז מיר עפענען זיך אַ סכום פון PHP דעלימיטערס איז צו דרוקן אויס אַ ווערט. און אַז ס אַלע מיר רע געגאנגען צו טאָן. אבער דאָרט ס אַפֿילו סטענאָגראַפיע פֿאַר וואָס. $? = איז PHP סטענאָגראַפיע פֿאַר זאגן עפּעס ווי $? PHP ווידערקאָל די סאַכאַקל פון נומ1 און נומ2. אַזוי דעם איז נאָר אן אנדער סטענאָגראַפיע פֿאַר וואָס. אַזוי אויב איך לויפן דעם פּראָגראַם, PHP אַדד2.פפּ. איך וועט Zoom אַראָפּ אַ קליין ביסל. ביטע געבן מיר אַ נומער, 4. ביטע געבן מיר אַ רגע נומער. און זינט איך טאָן ניט טאַקע זאָרגן וועגן דאַטע טייפּס אין PHP, איך קענען זאָגן 4.8. די סאַכאַקל פון די צוויי נומערן איז 8.8. אַז פֿונקציע ביכייווז שיין פיל פּונקט דער זעלביקער ווי מיר וואָלט דערוואַרטן, ווי געזונט. און איך האָבן איינער מער אָפּענעד אַרויף דאָ גערופֿן דיסע.פפּ. פּרובירן דעם ווידער. איך האָבן איין מער דאָ גערופֿן דיסע1.פפּ, וואָס אויך, זען, האט אַז ווינקל קאַנטיקער קשיא צייכן גלייַך צייכן נאָוטיישאַן אין דאָרט, אָבער באַמערקן אַז אין דעם פאַל איך בין פאַך די פֿונקציע ראַנד, וואָס ווי איר זאל דערוואַרטן דזשענערייץ אַ ראַנדאָם נומער. "איר ראָולד אַ," און עס ס 'געגאנגען צו רעכענען עטלעכע ראַנדאָם נומער, מאָד 6 + 1. אַזוי אַז וועט געבן מיר נומער אין די קייט פון 1-6. געדענקען אַז מאָד 6 וואָלט געבן מיר אַ נומער אין די קייט פון 0-5, אָבער אויב איך בין סימיאַלייטינג ביינדלעך ראָללס, וואָס איז וואָס איך בין טאן דאָ, איך טאָן ניט ווילן די ביינדלעך צו גיין פון 0 צו 5, איך ווילן ביינדלעך אַז גיין 1-6. און אַזוי דאָס איז אַ וועג צו באַקומען מיר אין די קייט פון 1-6. איך בין טאן דעם צוויי מאָל. אַזוי משמעות איך בין ראָולינג צוויי ביינדלעך אין דעם פּראָגראַם. אַזוי איך וועט קלאָר מיין פאַרשטעלן, און איך וועט טאָן PHP דיסע1.פפּ. איר ראָולד אַ 4 און אַ 2. און אויב איך לויפן דעם פּראָגראַם ווידער, איר ראָולד אַ 5 און אַ 5. אַזוי יעדער מאָל איך לויפן דעם פּראָגראַם, איך בין געטינג פאַרשידענע נומערן, ווייַל יעדער מאָל איך טאָן אַזוי, עס ס סטאַרטינג איבער. עס ס געגאנגען צו דזשענערייט אַ נייַ שטעלן פון ראַנדאָם נומערן פֿאַר מיר. אַזוי אויב מיר ניטאָ געניצט צו פליסנדיק מגילה פון C, מיר ניטאָ געניצט צו טייפּינג ./ די נאָמען פון אַ פּראָגראַם, רעכט? אַז ס ווי מיר ווע געטאן אַלע פון אונדזער מגילה אין C אַזוי ווייַט. מיר קענען טאָן דעם אין PHP ווי געזונט דורך אַדינג עפּעס גערופֿן אַ שעבאַנג צו די שפּיץ פון אונדזער PHP טעקע. איך וויסן עס ס מין פון אַ נאַריש וואָרט. עס ס קורץ פֿאַר האַש קלאַפּ. אַז ס דער ערשטער צוויי אותיות דאָרט. געדענקען מיר רופן עקסקלאַמיישאַן פונט אָפט אַ קלאַפּ אין קאָמפּיוטער וויסנשאַפֿט. עס אויך זאל זיין פֿאַר שאַרף קלאַפּ. עס ס אַ פּאָר וועגן צו טייַטשן עס. אבער עס ס בייסיקלי אַ ספּעציעל סאָרט פון באַפֿעל אַז די PHP יבערזעצער ונדערסטאַנדס ווי, טאַקע, איך ווילן איר צו ויספירן דעם פּראָגראַם, וואָס איז משמעות / User / בין / PHP, וואָס איז אַקטשאַוואַלי ווו די PHP יבערזעצער ספּעסיפיקאַללי לעבן אויף אונדזער סיסטעם. אַזוי יט'ס-- וואָס כאַפּאַנז דאָ איז די יבערזעצער ונדערסטאַנדס, טאַקע, איך בין משמעות געמיינט צו נוצן אין דעם פּראָגראַם צו לויפן דעם טעקע. און אַזוי עס אַלאַוז איר צו האָפּקען איבער די שריט ווייל צו זאָגן PHP סאָמעטהינג.פפּ. עס ס איין אנדערע כאַפּן דאָ, וואָס איז אַז אויב מיר וועלן אונדזער מגילה צו אַרבעט ווי דערוואַרט, מיר דאַרפֿן צו טאָן עפּעס גערופֿן אַ טעקע דערלויבעניש טוישן. און מיר וועט גאָ-- און מיר רעדן אַ ביסל ביסל מער וועגן טעקע דערלויבעניש ענדערונגען אין אונדזער ווידעא אויף מווק, אָבער קלעקן עס צו זאָגן אַז דאָס איז וואָס איר דאַרפֿן צו טאָן אין סדר צו מאַכן דיין .פפּ טעקעס עקסעקוטאַבלע. אַזוי לאָזן ס נעמען אַ קוק אין דעם ווי אונדזער לעצט בייַשפּיל איבער אין קס50 ייד. אַזוי דאָ אין ייד איך האָבן צוויי טעקעס אין דעם PHP Directory אַז דערשייַנען ניט צו זיין גערופֿן .פפּ. איך האָבן אַ פֿונקציע גערופֿן אַדד-- איך האָבן אַ טעקע געהייסן אַדד3 און אַ טעקע געהייסן דיסע2. אַזוי לאָזן ס נעמען אַ שנעל קוק און עפענען אַרויף אַדד3. און ווי איר קענען זען, אין די אָנהייב פון מיין טעקע איך האָבן דעם שעבאַנג, רעכט? דאס האַש צייכן עקסקלאַמיישאַן פונט. איצט, איר וועט אויך אפֿשר באַמערקן אַז פֿאַר עטלעכע סיבה, איך טאָן ניט האָבן קיין סינטאַקס כיילייטינג ענימאָר, און דעם איז וואָס איך אַלודאַד צו פריער, וואָס איז געווען אַז אויב איך טאָן ניט נאָמען מיין טעקע .פפּ, איך טאָן ניט האָבן די נוץ פון סינטאַקס כיילייטינג ענימאָר. דעם טעקע איז נאָר גערופֿן אַדד3. אַזוי אַז איך קענען לויפן עס שפּעטער אויף מיט ./ אַדד3 און ניט ./ אַדד3.פפּ. אזוי די רעאַסאָנ-- עס ס נאָך פייַן, עס ס נאָך גילטיק PHP, אָבער עס ס ניט סינטאַקס כיילייטיד, ווייַל דעם טעקע איז ניט גערופֿן סאָמעטהינג.פפּ. אַז ס די בלויז פאַקטיש חילוק דאָ, פּלוס די שעבאַנג. אַזוי לאָזן ס זען וואָס כאַפּאַנז ווען איך פּרובירן און לויפן דעם פּראָגראַם. ./ אַדד3, פּונקט ווי איך וואָלט מיט סי באַש. ./ אַדד3 דערלויבעניש געלייקנט. דאס איז וואָס איר 'רע געגאנגען צו זען אויב איר פאַרגעסן צו נוצן די טשמאָד באַפֿעל צו טוישן די פּערמישאַנז פון די טעקע. ווי עס טורנס אויס, רעגולער PHP טעקעס קענען ניט נאָר זיין עקסאַקיוטאַד. זיי קענען זיין ינטערפּראַטאַד, אָבער מיר ניטאָ טאן עפּעס אַ ביסל אַנדערש דאָ. מיר ניטאָ עקסאַקיוטינג עס. און אַזוי איך דאַרפֿן צו לייגן די דערלויבעניש פון דורכפירונג, טשמאָד אַ + X צו אַדד3. דעמאָלט איך קענען זאָגן ./ אַדד3. ביטע געבן מיר אַ נומער. 5, 6. די סאַכאַקל פון די צוויי נומערן איז 11. סימילאַרלי, איך האב שוין טשמאָדעד דיסע2, אַזוי איך קענען נאָר טיפּ ./ דיסע2, איר ראָולד אַ 1 און אַ 1, איר ראָולד אַ 5 און אַ 4, און אַזוי אויף. אַזוי אַז ס שיין פיל די געדאַנק פון אַ PHP סינטאַקס, רעכט? עס ס אַ פּלאַץ צו באַקומען דורך, איך וויסן. אבער אַלעווייַ איר ווע געזען איצט אַז PHP איז ניט טאַקע אַז אַנדערש פון C און טאַקע גיט אונדז די פיייקייַט צו נעמען דאס אַרויף אַ קאַרב אָדער צוויי. מיר טאָן ניט טאַקע האָבן צו זאָרג צו פיל אַבאָוט-- מיר טאָן ניט טאַקע האָבן צו זאָרג צו פיל וועגן די נידעריק-מדרגה דעטאַילס מיר האט צו זאָרג וועגן מיט C, רעכט? מיר קענען פאָקוס אויף די העכער מדרגה שטאָפּן אַז PHP אַלאַוז אונדז צו טאָן און צו נעמען פֿאַר געגעבן אַז עס וועט אַרבעטן פֿאַר אונדז. אזוי עס גיט אונדז די פיייקייַט איצט, טראַנסיטיאָנינג פון C צו PHP, צו מאַכן מגילה אַז ביסט אַ פּלאַץ מער קאָמפּלעקס און טאָמער אַ פּלאַץ מער געזונט. אַזוי איך האָפֿן איר האָבן שפּאַס אַרבעט מיט PHP, און איך בין דאַג לויד. דאס איז קס50.