[Powered by Google Translate] [კვირა 8]
[დავით J Malan] [ჰარვარდის უნივერსიტეტის]
[ეს არის CS50.] [CS50.TV]
>> კეთილი იყოს.
ეს არის CS50, და ეს არის დაწყების კვირაში 8.
რამდენიმე შესაძლებლობები ამ კვირაში,
მათ შორის ამ განხილვა აქ, სადაც ზოგიერთი საკვები მოემსახურება.
დამატებითი ინფორმაციისათვის შეამოწმეთ სლაიდები, რომლებიც ამჟამად.
და ასევე კიდევ ერთი ღონისძიება ამ კვირაში საკუთარ თომას Carriero.
მან ერთ ერთი CS50 ყოფილი ხელმძღვანელი სწავლების პრაქტიკის ვინც ახლა Dropbox,
და ის ბიჭი ვინც hooked us ერთად იცით, რა,
ასე რომ, თუ გსურთ უფრო, რომ უფროსი მათი განხილვა ამ შუადღისას ამისთვის Dropbox და სხვა.
CS50 ლანჩი არის ამ პარასკევს.
Do შემოგვიერთდნენ თუ შეუძლიათ, 1:15, როგორც ყოველთვის, დილის ცეცხლი და ყინული.
>> და ახლა ჩვენ ჩაყვინთვის შევიდა რაღაც მოუწოდა სემინარები.
ჩვენი CS50 სემინარები, გაწვევა, ეს სურვილისამებრ კლასების ხელმძღვანელობით სწავლების პრაქტიკის
და რა თქმა უნდა თანაშემწეები და მეგობრები, რა თქმა უნდა,
FOLKS საწყისი ჯგუფის კამპუსში მოუწოდა ABCD, რომელიც ჯგუფს
technophiles წლის კამპუსში, ისევე როგორც ჯგუფის მოუწოდა HCS,
ჰარვარდის კომპიუტერული საზოგადოება, სტუდენტებს, რომლებიც ერთნაირად დაინტერესებული Computing.
წლევანდელი მოშორებას სემინარები მოიცავს სემინარებს Android და iOS და JavaScript
და PHP, Unix, Vim, და სხვა, ასე რომ მიხვდებიან, რომ ეს სემინარები ახლოვდება.
თუ გსურთ Rsvp ნებისმიერი მათგანი ხელმძღვანელს, რომ URL არსებობს.
ჩვენ მაშინ საგუშაგო თქმა ნახვა ჯერ და ადგილებში ერთხელ ისინი დასრულებული.
მაგრამ ვიცი იქ 5 წლის ღირებულების წინასწარი სემინარები ხელმისაწვდომი,
რომელთა უმრავლესობა დღესაც ძალიან აქტუალური თვალსაზრისით ტექნოლოგიების ალბათ
მინდა თამაში თქვენი საბოლოო პროექტების, ისე უხელმძღვანელებს არსებობს გარკვეული შესაძლებელი videos მათი.
>> CSS, იმ თქვენ ვინც იცნობს ცენტრთან უკვე,
რა არის ეს მოკლედ?
რა არის CSS?
ეს კასკადური სტილების, და რას ნიშნავს ეს?
რას გააკეთებს ჩვენთვის, CSS?
ყველა უფლება, მოდით თბილი ერთად ადვილია ერთი, HTML, ჰიპერტექსტური მარკირებას ენაზე.
რას გააკეთებს ჩვენთვის?
ვინმეს საერთოდ?
ის მიღების მართლაც უხერხულ სვამს ამ კითხვებს.
HTML, ჰიპერტექსტური მარკირებას ენაზე.
დიახ? არარის?
[Inaudible სტუდენტი საპასუხოდ]
Okay, კარგი, იგი საშუალებას გვაძლევს აღსანიშნავად up ტექსტი ცარიელია წელს ბრაუზერში.
ეს არ არის პროგრამირების ენა.
ეს მართლაც მარკირებას ენაზე, რომელიც ნიშნავს, რომ იგი ავალებს ბრაუზერის როგორ არიან
ინფორმაციას, ასე რომ მარტივი განსახიერება ამ როგორც ჩვენ ვნახეთ
არის რაღაც სუპერ მარტივი მოსწონს boldfacing, ღია bracket ბ დახურული ფრჩხილი ამბობს
ამ ტექსტის თამამი, და ეს რეალურად მხოლოდ ერთი მრავალი გზა
რომელშიც ჩვენ შეგვიძლია გავაკეთოთ, რომ, და მართლაც, ამ დღეებში უკეთესი მიდგომა
to stylizing თქვენს ვებ გვერდზე, რაც რამ თამამი და კურსივით
და ორიენტირებული და გამართლებული და მოსწონს, არ კეთდება მეშვეობით HTML tags მარტო
არამედ ერთად ტექნიკა მოუწოდა CSS, კასკადური სტილების.
ეს არის ენა საკუთარ თავზე.
ეს ძალიან არ არის პროგრამირების ენა, მაგრამ-
ყველას, ეს არის დენ, რომელიც ინახავს გაწევრიანების us დღეს.
ზოგიერთი ტექნიკური სირთულეების. პრობლემას არ წარმოადგენს.
>> CSS საშუალებას გვაძლევს stylize გვერდზე
მიიღწევა, თუ რა ეწოდება თვისებები, მოდით შევხედოთ ამ
გზით ზოგიერთი ძირითადი მაგალითები.
ნება მომეცით წასვლას ელექტრო დღეს.
მაქვს წყარო 8 ორშაბათი დირექტორია აქ,
და მე ვაპირებ წასვლას დირექტორია მოუწოდა CSS რომელშიც ჩვენ მთელი bunch
ფაილი ელოდება ჩვენთვის სწორედ აქ,
და ამ საქაღალდეში გვაქვს, მაგალითად, search0.html ბოლო დროს.
ახლა, გავიხსენოთ ერთად search0 წამოვედით ამ შენიშვნა
მიერ დალაგების განხორციელების Google ან მართლაც უბრალოდ წინა დასასრულს იგი კვირაში წინ,
და შენიშნავს, რომ ჩვენ გვქონდა ახალი Tags არსებობს.
ჩვენ გვქონდა h1 ამისთვის დიდი, თამამი სათაურს,
ფორმა, რომელიც საშუალებას გვაძლევს რეალურად HTML ფორმა მომხმარებლის შეყვანის.
მოქმედება, რა იყო მნიშვნელობა სამოქმედო ატრიბუტი
on HTML ფორმა tag?
რა იყო მნიშვნელობა ამ, ქმედება?
მე უბრალოდ ამ დღეს.
აქცია დანიშნულების სად ფორმით იქნება წარმოდგენილი.
ფაქტი, რომ რომ ამბობს სამოქმედო = "google.com / ძიება"
იმას ნიშნავს, რომ როდესაც მომხმარებელი იმოქმედებს submit ღილაკზე ან ექვივალენტი
ნებისმიერი ფორმით სფეროებში ისინი შევსებული ვაპირებთ გაიგზავნება არ ჩვენს სერვერზე
ან ჩვენი ელექტრო არამედ იმ კონკრეტულ URL at Google.
და მეთოდი ის აპირებს გამოიყენოს ეწოდება მისაღებად,
და კიდევ, ამ დროისთვის, მხოლოდ ტექნიკა ავლით ინფორმაცია გასწვრივ, რათა სერვერზე
გზით URL, ისე ავიღოთ სწრაფი ვიხსენებთ როგორ ამ სამუშაოები.
>> გაითვალისწინეთ, რომ იქ შეყვანის რომლის სახელიც Q
რომელთა ტიპის ტექსტი და შემდეგ მეორე შეყვანის ტიპის წარუდგინოს
რომელთა ღირებულება არის CS50 ძებნა, და მართლაც, თუკი ჩვენ გახსენით ეს ფაილი აქ,
search0.html, ეს სუპერ მარტივი ფორმით,
და თუ ძიება რაღაც კომპიუტერულ მეცნიერებათა
და შემდეგ დააჭირეთ დააჭირეთ CS50 ძებნა
შეამჩნევთ, რომ რა მოხდება სცილდება მიღების to Google
მე კონკრეტულად დასრულდა ამ URL ზედა,
google.com / search? q = კომპიუტერის + მეცნიერების,
და კომპიუტერულ მეცნიერებათა აშკარად რა აკრეფილი შემოსული
+ მხოლოდ იმას ნიშნავს, რომ სადაც სივრცის ხასიათი იყო,
და ეს კეთდება ბრაუზერში უბრალოდ დარწმუნდით, რომ იქ არ არის
დაბნეულობა და თეთრი სივრცე ფაქტობრივი მისამართი.
და მაშინ Q, რა თქმა უნდა, არის პარამეტრი სახელი.
ჩვენ არ გვინახავს, ​​რა არის ჩვენი, პროგრამისტი, შეიძლება რეალურად შედიხართ Q ამჟამად.
შეიძლება ვივარაუდოთ, რომ Google იცის რა უნდა გააკეთოს ამ აქ,
მაგრამ ჩვენ იქ დროულად დღეს.
>> მაგრამ ნება მიბოძეთ გადახედოთ ნაცვლად საათზე search1.html,
რომელიც გამოიყურება ცოტა განსხვავებული იმიტომ გადავწყვიტე, რომ ეს ფორმა აქ იყო პატარა კოჭლი.
ვგულისხმობ, ის ზედა მარცხენა.
იქ ნამდვილად არ ესთეტიკის მას, და ასე მინდა stylize ამ
ცოტა მეტი, როგორიცაა Google, რომლის მთავარი, გაწვევას,
მიუხედავად იმისა, რომ თქვენ შეიძლება არ ჩავალ, რომ ხშირად, ასე გამოიყურება დღეს ჰელოუინი.
თუ ჩვენ ნაცვლად გახსენით ვერსია 1 ამ ფაილის, ძიება 1.html, მე ორიენტირებული იგი.
ერთმანეთისგან საკმაოდ მახინჯი, მაგრამ მაინც არის მე დაიწყო გაკონტროლება ესთეტიკას ამ გვერდზე,
არა მხოლოდ მარკირების up მისი.
მოდით შევხედოთ ძებნა 1, და იქ მართლაც მხოლოდ ერთი განსხვავება აქ,
რაც შესაძლოა გადმოხტა თქვენ, ან იქნებ არა,
მაგრამ რა ერთი ხაზის ან Snippet განსხვავება?
>> არსებობს ამ სტილის ატრიბუტია, გამოდის, რომ HTML
საუკეთესო ელემენტებს, საუკეთესო Tags შეიძლება ჰქონდეს სტილის ატრიბუტია მათ,
და შიგნით რომ სტილი ატრიბუტი არის ციტირებული სტრიქონი,
და რომ ციტირებული სტრიქონი არის CSS.
თქვენ შეგიძლიათ განათავსოთ კასკადური სტილების ცხრილების იქ
განსაზღვრით, როგორც საკუთრების სახელი
მოჰყვა მსხვილი ნაწლავის მოჰყვა ღირებულება.
ეს არის სახის სამწუხარო დიზაინი გადაწყვეტილება რამდენიმე წლის წინ
რომ CSS არის ენა საკუთარ თავზე,
მაგრამ syntactically ძალიან განსხვავდება HTML.
ამ შემთხვევაში, ჩვენ ვხედავთ, რომ შიგნით ჩემი ვებგვერდზე, რომელიც დაწერილი HTML,
მაქვს CSS შიგნით ამ ციტატებით, და კონვენციის CSS
ის არის, რომ თქვენ გაქვთ რასაც ქონება მოჰყვა, კიდევ ერთხელ, მსხვილი ნაწლავის,
მოჰყვა ღირებულება რომ ქონება, ისე არ თანაბარი ნიშანი.
არ არსებობს დამატებითი შეთავაზებები.
უბრალოდ ამ ორი წერტილი გამოყოფილი გასაღები ღირებულება წყვილი,
და ტექსტი ხაზის აკეთებს ზუსტად რა წერია.
ეს aligns ტექსტი ორგანოს გვერდზე, რომელიც ნამდვილად guts of the page,
ცენტრში.
>> Okay, საბოლოო ჯამში კი, უნდა იყოს ნათელი, არის ამ.
არა ყველა, რომ sexier, მაგრამ მაინც ის ორიენტირებული და პატარა უფრო რეალური Google.
მაგრამ რა მოხდება თუ მე ნაცვლად გახსენით ვერსია 2 ამ
და აღნიშნავენ ქვემოთ აქ ახალი tag საერთოდ?
ახლა ხელმძღვანელი ჩემი გვერდი, რომელიც მანამდე მხოლოდ ჰქონდა რომელიც tag
ყველა ადრე მაგალითები?
უბრალოდ ჰქონდა ამ, სათაური.
მომენტში წინ ხელმძღვანელი tag ჩანდა მოსწონს ეს.
ახლა ნაცვლად მას სტილის tag შიგნით ის,
და ეს ძალიან, მე ბოდიშს, syntactically გამოიყურება ძალიან განსხვავდება HTML,
მაგრამ თქვენ შეეგუება ეს, რომლის დროსაც შიგნით სტილის tag
შემიძლია ახლა ფაქტორი, თუ რა იყო ის მომენტი წინ
ატრიბუტი, სტილის ატრიბუტია, და შემიძლია დააყენა ეს ძალიან ზევით ჩემი გვერდი.
>> რატომ?
ისე, ეს ნაბიჯი დასუფთავების რამ up, ჰგავს წერილობით C კოდი
ჩვენ ზოგჯერ წერენ ფუნქციების ფაქტორი საერთო ფუნქციონალური.
უბრალოდ ცოტა სუფთა დაიწყოს ფაქტორინგული გარეთ რამ, როგორიცაა ესთეტიკის
ერთ ცენტრალურ საიდან ვიდრე მქონე ეს ყველაფერი intersperse მთელი თქვენი HTML.
ეს ძალიან აკეთებს იმას ნათქვამია, მიუხედავად იმისა, რომ არსებობს bit ახალი სინტაქსის.
ეს აქ არის არჩევის, და სხეულის მხოლოდ იმას ნიშნავს, აირჩიეთ ორგანოს ელემენტს
და ვრცელდება შემდეგ თვისებები მას.
ისე, ქონება ზუსტად იგივე.
კარგი ღონისძიება მე დასძინა მძიმით დასასრულს,
რომელიც tends უნდა იყოს კონვენციის, და მე გახვეული ამ მთელი ქონების
in curly braces რადგან შემეძლო რეალურად სხვადასხვა რამ აქ.
შემეძლო რეალურად ამბობენ რაღაც ფერი: ლურჯი;
>> ახლა ესეც არ იქნება ნაბიჯი არაფერი ყველა რომ გალამაზებაში
მაგრამ თუ ახლა დავუბრუნდეთ ვერსია 2 მე მინიმუმ ეხლა გააკეთა ორგანოს ჩემი
გვერდის ტექსტი ლურჯი.
ღილაკს რჩება იგივე რადგან ისინი შეყვანის. ეს არ არის სუფთა ტექსტი.
მაგრამ ყველაფერი რომ არის ტექსტი, როგორიც CS50 ძებნა დასაწყისშივე, ფაქტიურად ლურჯი.
ისევ და ისევ, ყველა ჩვენ გავაკეთეთ ახლა არის ამოღება, სხეულის tag, განცხადებების,
სტილის ატრიბუტია, და ჩვენ factored ის აქ.
ეს არ არის დიდი გაუმჯობესება, მაგრამ თუ ავიღებთ ამ ერთი ნაბიჯით შემდგომი
შეამჩნია რა შეგვიძლია გავაკეთოთ ამ მესამე ვერსია აქ.
>> In search3.html ვებგვერდზე თითქმის იდენტურია
გარდა რა ახალ tag არის?
ლინკები, ამიტომ ეს ერთი არ არის ძალიან aptly დაასახელა
იმიტომ, რომ თქვენ არ აკავშირებს in გრძნობა clickable ჰიპერბმულის.
უფრო მეტიც, თქვენ ერთგვარი აკეთებს ეკვივალენტს # მოიცავს C
რის ლინკები tag ერთად href ატრიბუტი
და REL ატრიბუტი ამბობს წავიდეთ წინ
და ასლი პასტა შინაარსი ფაილი სახელად search3.css უფლება აქ, არსებითად.
იგი არ საკმაოდ გავაკეთოთ, მაგრამ ეს სულისკვეთებით იგი.
განცხადებაში ნათქვამია, წასვლა ღია რომ ფაილი, search3.css,
და მკურნალობა, თითქოს მომხმარებლის ჰქონდა აკრეფილი სწორად აქ უფროსი გვერდი
ისევე, როგორც მე წინა მაგალითი.
Search3.css, იმავდროულად, საკმაოდ მარტივია.
ეს მართლაც მხოლოდ შეიცავს ზუსტად რა იყო მომენტი წინ
სტილში tag, მაგრამ მე factored ის აქ საკუთარი ფაილი.
>> მიუხედავად იმისა, რომ ჩვენ არ გაატარა დროს ყველა HTML ან ვებ პროგრამირების
უბრალოდ ინტუიციურად რა მოტივაცია, ალბათ, ამისთვის ფაქტორინგული გარეთ
ამ პატარა Snippet კი ცენტრის შევიდა საკუთარი ფაილი
და შემდეგ მათ შორის იგი ამ ბმულს tag აქ?
[Inaudible სტუდენტი საპასუხოდ]
Okay, უფრო ადვილია წაიკითხა იმ გაგებით, რომ თქვენ გაქვთ თქვენი CSS in CSS ფაილი.
თქვენ გაქვთ თქვენი HTML თქვენს HTML ფაილი, ასე რომ ეს უფრო იკითხება ამ თვალსაზრისით.
რა შეიძლება იყოს მყარი? Yeah.
[Inaudible სტუდენტი საპასუხოდ]
ჰო, ასე რომ თქვენ შეიძლება შეიცავდეს ეს არაერთხელ, ამიტომ ახლავე ვაკეთებთ ამ
ძირითადი მაგალითები ინდივიდუალური ფაილი, მაგრამ ვარაუდობენ, თქვენ რეალურად მიღების
უძრავი ნახვა თქვენნაირი ნება pset 7 ან თქვენი საბოლოო პროექტი შესაძლოა,
და გსურთ რამდენიმე webpages, როგორც არის, რა თქმა უნდა საერთო on
ფაქტობრივი მსოფლიო ქსელში, და ეს იქნება ერთგვარი lame
დან უნდა დააკოპირეთ და ჩასვით იგივე ლურჯი ფერი
და იგივე ტექსტი იდეებს ცენტრში ყოველ ერთ იმ გვერდებზე.
პირიქით, ეს უფრო აზრი ფაქტორი აღმოჩნდა, ჰგავს ჩვენ გაკეთდეს C
ერთად. თ ფაილის, ვთქვათ ერთ ცენტრალურ ადგილას,
ამ შემთხვევაში search3.css და შემდეგ დაუშვებს ფაილი
თქვენს ნახვა რეალურად მოიცავს რომ ფაილი გზით ამ tag აქ ხაზი 16.
როგორც არის ჩვეულებრივ შემთხვევაში, ჩვენ დაიწყო ვერსია 0, რომელიც სახის სამუშაოები
მაგრამ არ არის აუცილებლად საუკეთესო, და ყოველი ნაბიჯი,
ძებნა 1, 2 ძებნა და ახლა ძებნის 3 ჩვენ აღებული ამ Baby ნაბიჯები
მიმართ დიზაინით, რომლებიც პატარა სუფთა და უფრო მოსამზადებელი
უფრო კომპლექსური გვერდებზე რომ ჩვენ შეიძლება გავაკეთოთ ქვემოთ გზა.
>> ნება მომეცით გახსენით ერთი ბოლო მაგალითია აქ უბრალოდ რათა ნახოთ
კიდევ უფრო სტილიზებული გვერდზე, მაგრამ პირველი მოდით შევხედოთ HTML.
ეს არის search4.html, და რომ სტრუქტურულად თითქმის იგივე
გარდა დანერგვა ახალი ტეგი, DIV.
Div არის tag რომ წარუდგენს სამმართველოს გვერდზე.
შეგიძლიათ წარმოიდგინოთ, რომ ეს უხილავი მართკუთხედი.
ეს ერთგვარი ქმნის swath of ნაკვეთს ვებგვერდზე
რომ თქვენ შეგიძლიათ stylize ერთდროულად.
რა მე ვაკეთებ აქ ასეთია.
შიგნით ჩემი სხეულის tag, რომელიც უკვე არსებობს ყველა ერთად,
მე ვამბობ, შექმნას სამმართველოს გვერდი აქ გავლით ხაზები 45 გზით 47,
და ეს ნიშნავს, რომ არსებითად მომეცი უხილავი მართკუთხედი გასწვრივ ზევით გვერდზე.
მაშინ მომეცი მეორე ოთხკუთხედს, თუმცა უხილავი, ქვემოთ რომ,
და დაადგინონ ის მიერ სახელის შინაარსს, ხოლო შემდეგ და ბოლოს,
მომეცი მესამე სამმართველოს გვერდზე ბოლოში
მოუწოდა ID.
ჩვენ დავინახავთ, თუ რატომ მე ვაკეთებ ამ რაღაც მომენტში,
მაგრამ კონცეპტუალურად მაქვს header გაყოფა.
მაქვს კონტენტი გაყოფა, და მაქვს ძირი სამმართველოს გვერდზე
მიუხედავად იმისა, რომ ეს მხოლოდ მარკირებას.
მომხმარებლის არ აპირებს ვხედავ 3 rectangles,
მაგრამ სახის სტრუქტურულად იქ კულისებში
ისინი რეალურად დღემდე.
>> ახლა, ვინც ზრუნავს? რატომ რეალურად ამის გაკეთება?
ყველაფერი გვერდზე არის იგივე, რაც ჩვენ ვნახეთ ადრე.
აი ჩემი სახით. აი ჩემი შეყვანის, ჩემი შეყვანის, ხაზის შესვენების და სხვ.
აი სურათი, თუმცა, ასე რომ ჩვენ დავინახავთ, სადაც ეს მოვიდა რაღაც მომენტში.
აქ ძირი, რომელიც ახალი, მხოლოდ იმიტომ, რომ მინდოდა გააცნობს
კიდევ რამდენიმე კონტენტი აქ.
თუ ჩვენ გადახვევა up შეამჩნევთ, რომ ID ამ div არის header.
ID ამ div არის შინაარსი, და ID ამ ერთი ძირი.
და როგორც სახელი ვარაუდობს, როდესაც თქვენ ID ატრიბუტის
in HTML, ზოგადად უნდა ცალსახად იდენტიფიცირება
ერთი ელემენტები, ერთი tags თქვენს გვერდზე.
ტვირთი მთლიანად თქვენ უნდა გვახსოვდეს, რომ თქვენ გაქვთ header ID უკვე.
თქვენ გაქვთ ძირი. თქვენ გაქვთ content ID უკვე.
კომპიუტერი არ აპირებს გაერკვნენ, რა არის შესაძლებელი ID თქვენთვის,
ასე რომ თქვენ შეიძლება შემთხვევით მისცეს 2 Tags პირადობის ჰედერი,
და რომ მხოლოდ არასწორია.
>> თქვენ უნდა გვახსოვდეს, რა თქვენ შექმენით,
მაგრამ ერთხელ თქვენ გაკეთდეს, რომ გაფრთხილების რა შეგვიძლია გავაკეთოთ აქ.
შემიძლია ახლა დააკონკრეტა ჩემი სტილი tag ზედა
ან equivalently ჩემი CSS ფაილი, თუ მე ჯერ კიდევ გამოყენებით, რომ ვერსია,
შემიძლია ვთქვა # header, და რა, რომ ნიშნავს, რომ რაც არ უნდა tag
ამ ვებგვერდზე აქვს პირადობის header
და #, მხოლოდ ადამიანის კონვენცია, წარმოადგენს პირადობის მოწმობა.
მკვეთრი ნიშანი ან ფუნტი ნიშანი წარმოადგენს ID.
ჰედერის არის სახელი, რომ მე გავეცი ეს.
ეს ნიშნავს, ვრცელდება ამ CSS ქონება
to whatever tag ამ გვერდზე ატარებს პირადობის header.
იგივე გარიგება აქ.
გამოიყენოს ეს ქონება, რომელიც ხდება უნდა იყოს იგივე, ნებისმიერ ელემენტს
რომლის ID არის შინაარსი, ხოლო შემდეგ ქვემოთ აქ
შეამჩნია მე მივიღე პატარა fancier ერთად ძირი.
ნებისმიერი ელემენტს, რომლის ID არის ძირი, რომლის შეიძლება მხოლოდ ერთი განმარტება,
წავიდეთ წინ და მიიღოს მისი შრიფტის ზომა პატარა,
მისი შრიფტის წონა თამამი, მისი ზღვარი 20 pixels.
>> რას ნიშნავს ეს?
უბრალოდ ზღვარი ზედა, ქვედა, და მარცხენა და მარჯვენა.
ეს ნიშნავს, მომეცი 20-pixel უხილავი ზღვარი გარშემო
უბრალოდ დააყენებს ყველაფერი დაშორებით ეს ცოტა, ისევე როგორც თქვენ შეიძლება გავაკეთოთ Word,
Microsoft Word ან გვერდებზე ან მოსწონს.
და შემდეგ ტექსტის გასწორება ცენტრი.
ვნახოთ საბოლოო ჯამში, ხოლო შემდეგ ჩვენ დავბრუნდებით მდე ერთი დარჩენილი Snippet ცენტრის არსებობს.
ეს არის ვერსია 4, ჩვენი გაგრძელდება ძებნა მაგალითები, და ეს ბევრად, ბევრად sexier.
ახლა კი, სამართლიანობა, მე უბრალოდ Googled "Google Font ლოგო გენერატორი."
და რომ საშუალება მომცა შექმნა GIF, სურათის ფორმატი, რომელიც ჰგავს, რომ არსებობს.
სინამდვილეში, ამისათვის ძალიან.
ჩვენ გვყავს "Google შრიფტები ლოგო გენერატორი."
>> მოდით ვნახოთ, თუ შევძლებთ ამის გაკეთებას.
Okay, მე ვფიქრობ, ეს არის ნახვა მე გამოიყენება.
ჩვენ შეგვიძლია ვთქვათ, ევროკომისიის 10, მაგალითად, და მათი საკუთარი.
შეგიძლიათ ითამაშოთ ამ მთელი დღის განმავლობაში და შემდეგ დააწკაპუნეთ ეს
და შემდეგ ჩამოტვირთოთ ფაქტობრივი GIF, რომელიც ყველა რომ გავაკეთე.
მართლაც, ამიტომ ჩემი HTML, გავიხსენოთ, მეტი აქ
მქონდა იმიჯი tag, რაც ჩვენ ვნახეთ მოკლედ გასულ კვირას
რომელთა წყარო არის logo.gif.
და რა ერთხელ იყო მოტივაცია მქონე ამ alt ატრიბუტის,
ამ ალტერნატიული ატრიბუტი?
Yeah.
[Inaudible სტუდენტი საპასუხოდ]
კარგი, ასე რომ 2 მიზეზის გამო ნამდვილად, თუ ბრაუზერის ვერ გაიყვანოს მდე გამოსახულება
რადგან თქვენ გაქვთ ნელი ქსელის კავშირი ან გამოსახულება დაზიანებულია
ან რაღაც მსგავსი რომ მინიმუმ ადამიანის ვხედავთ "CS50 ძებნა",
და შემდეგ ასევე ხელმისაწვდომობის მიზეზები.
თუ თქვენ გაქვთ მომხმარებელს, რომელიც არის ბრმა და იყენებს ეკრანზე მკითხველს
და ამიტომ აშკარად ვერ ვხედავ Images მათ შეუძლიათ მინიმუმ
მოისმინოს ტექსტი, თუ მათი კომპიუტერი ლაპარაკობს ეს მათ.
>> ზოგადად, ეს საუკეთესო პრაქტიკა, როდესაც საქმე ხელმისაწვდომობის გვერდები
ასე რომ თუნდაც წევრებს ამ სიტუაციაში შეიძლება მოსმენა ან ნახვა, ასე ვთქვათ,
რა არის, რომ თქვენს გვერდზე.
თუმცა ერთი სხვა რამ, რომ მე აქ
რომელიც ცოტა საინტერესო და ვნახავთ მეტი ამ პრობლემების მითითებული 7
მეშვეობით ერთი შორტები ხელმძღვანელობით ერთ სწავლების პრაქტიკის.
მაგრამ # კონტენტი ეხება tag
რომლის ID არის შინაარსი, მაგრამ შემდეგ იქ სივრცის ხასიათი, და შემდეგ არსებობს სიტყვის შეყვანის.
ისე, რა საინტერესოა ცენტრის შესახებ ისაა, რომ თქვენ
ეხება ჭდე გვერდი სახის იერარქიულად,
და რა ამ Snippet ცენტრის საშუალებით არის იპოვოს tag
რომლის ID არის შინაარსი, და შემდეგ ვრცელდება შემდეგ თვისებები
ყველა შეყვანის Tags რომლებიც შთამომავლები შინაარსი,
რომ არის, რომლებიც indented შიგნით მას.
წანაცვლება, კიდევ ერთხელ, მხოლოდ მნიშვნელოვანია კომპიუტერი, არ ადამიანური,
არამედ კონვენციის ჩვენ აბზაცის რამ, როგორც ჩვენ წავიდეთ სიღრმეში გვერდზე,
ასე რომ, ეს იმას ნიშნავს, ვრცელდება ზღვარი 5 პიქსელი ნებისმიერ შეყვანის ელემენტს
რომ სადღაც შიგნით ან წყობილი შიგნით
ელემენტს, რომლის ID არის ტელეფონი.
>> ვინ ამჯამად რომ ვრცელდება?
ისე, არსებობს რეალურად მხოლოდ ამ 2 ბიჭებს აქ.
გაითვალისწინეთ, რომ შიგნით ფორმა არსებობს 2 საშუალებებით,
როგორც იქ უკვე ყველა ჩამოთვლილი მაგალითები.
მაგრამ ცნობა იმ 2 საშუალებებით მოხდეს უნდა წყობილი შიგნით,
თუმცა ცოტა ღრმად, რამდენიმე ფენა წანაცვლება,
შიგნით tag რომლის ID არის ტელეფონი.
რას ნიშნავს ეს?
თუ ჩვენ წასვლა ბრაუზერის აქ ოდესმე ისე ოდნავ-
ნება მომეცით დიდი ზომით, რომ არსებობს ცოტა padding შორის ღილაკს
და შორის ველში.
>> ნება მომეცით დროებით ჩართოთ, რომ off.
ნება მომეცით ახვიდეთ ჩემი CSS, და ნება მომეცით წავიდეთ წინ და მხოლოდ
შეცვალოთ ეს ზღვარი 5 პიქსელი 0 pixels.
ნება მომეცით წავიდეთ წინ მაშინ და შეინახოთ ფაილი, დავუბრუნდეთ საძიებო სისტემა
და განაახლეთ და უყურეთ შუა გვერდზე.
ყველაფერი გაბმულ შეკუმშული ერთად, და როდესაც მე პირველად whipped მაგალითი up
ვფიქრობდი, რომ ჩანდა სულელური ერთად ველში და შემდეგ ღილაკს დაუყოვნებლივ ქვემოთ იგი.
მინდოდა pad ეს ცოტა, ამიტომ გააცნო მინდვრები.
რა ჩვენ არ გავაკეთებთ ლექცია არის გავლა რამდენიმე ათეული
CSS თვისებების, რომ არსებობს, რადგან, კიდევ ერთხელ, არსებობს რამ, როგორიცაა შრიფტის ზომა,
შრიფტის წონა, მარჟა და ტექსტი გასწორება, და რამდენიმე ათეული სხვები,
და ჩვენ ეხება თქვენ პრობლემა მითითებული 7 სხვადასხვა გაკვეთილები ონლაინ
და მითითება, რომელიც საშუალებას გაძლევთ აირჩიოთ ეს ყველაფერი მდე.
მაგრამ რა მართლაც მნიშვნელოვანი დღის ბოლოს
>> არის იმის გაგება, თუ როგორ ეს ყველაფერი გამოიყენება.
ისევ და ისევ, თუ ჩვენ გვაქვს სტილის tag შიგნით, რომლის
შეიძლება selectors, სახის identifiers რომ დააკონკრეტა
ვის გსურთ ვრცელდება ეს ქონება,
და მაშინ დააყენა თვისებები როგორც გასაღები ღირებულება წყვილი
გამოყოფილი მსხვილი ნაწლავის და შემდეგ დასრულდა მძიმით,
ან შეგიძლიათ დააკოპიროთ ყველა რომ გარეთ და დააყენოს ის ცალკე CSS ფაილი
საკუთარ თავზე.
ყველა უფლება, ნებისმიერი შეკითხვა ცნებები
ან დიდი სურათის CSS?
თქვენ კვლავ ვხედავთ უფრო ის pset 7,
მაგრამ ჩვენ გავაგრძელებთ მას ზოგადად საკმაოდ მარტივია.
არარის? ყველა უფლება.
დროა ფაქტობრივი პროგრამირების ენა,
და ჩვენ დაბრუნდება ცოტა CSS სახით მაგალითი.
PHP არის რეალურად შესანიშნავად ხელმისაწვდომი ენა
რომ ის არის syntactically თითქმის ექვივალენტი C.
სხვა სიტყვებით, თუ იცით C, თქვენ იცით, რომ დიდი ნაწილი PHP,
მინიმუმ syntactically, მიუხედავად იმისა, რომ არსებობს რამდენიმე ახალი თვისება
და ზოგიერთი ახალი კონცეფციების გვექნება შევხედოთ.
>> მაგრამ დიდი ნაწილი, ახლა რომ ჩვენ გარდამავალ პერიოდში C-დან PHP
უმრავლესობა ახალი პერსონალის მართლაც დიდი სურათი,
თუ როგორ გამოიყენოთ ენის პროგრამის ვებ ნაცვლად
ბრძანებათა ზოლს ან მოციმციმე სწრაფი როგორც ჩვენ ვაკეთებთ ჯერჯერობით.
ცნობისთვის, განსაკუთრებით pset 7 და საბოლოო პროექტის Onward,
არ ისარგებლოს ამ URL აქ თუ გსურთ წაიკითხოთ up on ფორმალობების of PHP.
სინამდვილეში like უფასო ონლაინ სახელმძღვანელო ეფექტურად,
და თქვენ ასევე, რომ რაც მართლაც ლამაზი შესახებ PHP
ის არის, რომ არსებობს ასობით ფუნქციები რომ მოდის და ეს,
ხოლო C თქვენ არ აუცილებლად ხელი მიუწვდება
მეტი ფუნქციები ვიდრე იყვნენ მათემატიკის ბიბლიოთეკა, CS50 ბიბლიოთეკაში.
PHP-ში და ბევრი თანამედროვე ენებზე, Python და Ruby მათ შორის,
თქვენ ხელმისაწვდომობის ამდენი მეტი ფუნქციები, რაც იმას ნიშნავს, თქვენ მიიღებთ დაწერა
ბევრი ნაკლებად კოდი რადგან შეგიძლიათ დგომა shoulders სხვა ხალხი
ვინც უკვე დაწერილი გარკვეული რამ თქვენთვის.
>> ავიღოთ სწრაფი ტური სინტაქსის of PHP და შემდეგ წერენ რამდენიმე მაგალითი.
რა არის ლამაზი შესახებ PHP უპირველეს ყოვლისა
არის არ ძირითადი ფუნქცია.
თუ გსურთ დაწეროთ პროგრამა PHP თქვენ დავიწყო წერა კოდი,
და თქვენ არ ინერვიულოთ შესახებ ძირითადი.
იქ არ არის int. იქ არ არის დასაბრუნებლად.
იქ არ არის argv, argc რომ საჭირო როდესაც ვწერთ პროგრამა.
საკმაოდ შეგიძლიათ დავიწყო წერა კოდი, და ეს ნაწილი
რადგან PHP რასაც ინტერპრეტირებული ენა.
C იყო შედგენილი, და იგი შედგენილია იმ გაგებით, რომ თქვენ დაიწყოს
ერთად კოდებს, გაუშვით მეშვეობით Clang, რომელიც შემდგენელი,
და საბოლოოდ გარკვეული რაოდენობის ნაბიჯები თქვენ ობიექტის კოდი, 0S და 1s.
PHP და Python და Ruby და Pearl და სხვები
არიან სხვადასხვა ტიპის ენების რომ თქვენ არ კომპილირდება მათ.
თქვენ არ საწყისი კოდის to 0S და 1s.
თქვენ უბრალოდ აწარმოებს კოდებს, და თქვენ აწარმოებს კოდის
წერილობით ჩვეულ ტექსტური ფაილი, დამთავრებული. php ამ შემთხვევაში
ნაცვლად. გ, და რა პროგრამა აკეთებს თქვენს კომპიუტერში
იგი სიტყვასიტყვით ხსნის თქვენი კოდი ხაზის მიერ ხაზს.
>> სხვა სიტყვებით, ვიდრე წერენ პროგრამა და გაუშვით პროგრამა
პირდაპირ თქვენს ნაცვლად წერენ პროგრამას ფაილი დამთავრებული. php.
მაშინ თქვენ აწარმოებს ფაქტობრივი პროგრამის მოუწოდა php.exe, თუ თქვენ Windows-
ან უბრალოდ PHP თუ თქვენ წლის Mac OS და Linux,
და თქვენს მიერ მოწოდებული, როგორც შეყვანის to PHP პროგრამის საკუთარ კოდებს,
და მისი მიზანი ცხოვრებაში არის წაკითხვის თქვენი კოდი ყველაზე ქვედა, მარცხნიდან მარჯვნივ,
და ნუ რასაც თქვენ გითხარით ეს უნდა გააკეთოს.
>> ვნახოთ რა ამ აპირებს ნიშნავს syntactically.
PHP-ში გვაქვს პირობები.
ეს slide იდენტურია, რაც თქვენ დაინახა უკან კვირა 1
რადგან syntactically პირობები, IFS და სხვაგან IFS და სხვაგან PHP
გამოიყურება ზუსტად მოსწონს ეს.
როდესაც საქმე ეხება ლოგიკური გამონათქვამები ისინი აპირებენ გამოიყურება ზუსტად მოსწონს ეს.
როდესაც საქმე ეხება anding რამ ერთად, როგორც booleans ის აპირებს გამოიყურებოდეს ზუსტად მოსწონს ეს.
კონცენტრატორები გამოიყურება იგივე და კიდევ დამატებითი სარგებელი PHP
რომ კონცენტრატორები დო მხოლოდ ჩართვის char ან int.
თქვენ ვერ ჩართვის სიმებიანი ღირებულება.
PHP-ში შეგიძლიათ რეალურად გამოხატვის
რომ არის ცვლადი, რომლის შინაარსზე სიმებიანი,
და შეგიძლიათ მართლაც სიმებიანი შედარებით რეალურ ინტუიციური გზა,
არ მომცეთ შედარებით, რათა გადაწყვიტოს უნდა გავაკეთოთ შემთხვევაში მე ან j ან რაღაც.
ჩვენ დავინახავთ, რომ პოტენციურად ადრე ხანგრძლივი.
>> მარყუჟების ძალიან შესანიშნავად არის იგივე.
იყიდება მარყუჟების აქვს ინიციალიზაციისას, მდგომარეობა და ზოგიერთი ხმების განახლებები.
მიუხედავად იმისა, მარყუჟების, აგრეთვე არსებობს PHP.
Do ხოლო მარყუჟების ასევე არსებობს PHP,
და მასივები არსებობს PHP, მაგრამ აქ, სადაც სინტაქსი იწყება მისაღებად ცოტა განსხვავებული,
მაგრამ კონცეფციებს იგივე, და ცნებები ნამდვილად არის იგივე
როგორც ისინი კვირა 0 ერთად Scratch.
პირველ რიგში არის $ ნიშანი.
ეს იყო დიზაინის გადაწყვეტილება PHP რომლითაც ნებისმიერი ცვლადი
PHP-ში by დიზაინი იწყება $ ნიშანი.
არ არსებობს უფრო მეტი X, Y, ზ ეს არის $ X, Y $, $ Z მხოლოდ იმიტომ.
ეს რაღაც გვახსოვდეს და ახლა მარჯვენა მხარეს
ამ გამოიყურება მსგავსი მასივი,
მაგრამ ჩვენ გამოყენებით კვადრატულ ფრჩხილებში აქ.
PHP-ში და JavaScript, როგორც ჩვენ საბოლოოდ ვხედავთ,
განაცხადოს მასივი აკეთებთ ღია მოედანი bracket და დახურული მოედანი bracket,
და მაშინ თქვენ გამოყოფილია მძიმეებით ღირებულებების, თუ არა ints
ან სიმები ან სიმბოლო, რაც გაგიხარდებათ, შიგნით, რომ გამოხატვის არსებობს.
>> ახლა, როგორ გავაკეთოთ მსგავსი რამ დო?
რა იყო სინტაქსი statically გამოცხადების მასივი ცნობილი ციფრები?
ეს იყო Curly braces, ამიტომ უმნიშვნელო სხვაობა, მაგრამ ორივე PHP
და საბოლოოდ JavaScript უბრალოდ იყენებს კვადრატულ ფრჩხილებში, ასე ნამდვილად
მხოლოდ საინტერესო დეტალი აქ არის $ ნიშანი ცვლადის სახელი
და ასევე კვადრატულ ფრჩხილებში და იქ ერთი საინტერესო რამ
რომ უკვე გამოტოვებული ასევე ჩართულია მარცხენა მხარეს = ნიშანი.
რა აკლია რომ ჩვენ მოითხოვს კვირების განმავლობაში არის? Yeah.
[Inaudible სტუდენტი საპასუხოდ]
ზომა, ასე რომ არ არსებობს ნახსენები ზომა მასივი.
გულწრფელად ვამბობ, არ ნახსენები კვადრატულ ფრჩხილებში მარცხენა მხარეს
საქართველოს = ნიშანი, და რა არის დაკარგული საწყისი ხაზი?
Yeah. >> [Inaudible სტუდენტი საპასუხოდ]
ტიპის, ასე რომ საინტერესოა კერძოდ შესახებ PHP
ის არის, რომ ეს არ არის მკაცრად აკრეფილი ენის, როგორც C არის,
და ეს მკაცრად აკრეფილი გრძნობა, რომ თქვენ უნდა ითქვას, char,
თქვენ უნდა ითქვას int, თქვენ უნდა ითქვას, float.
>> ნებისმიერ დროს გსურთ ცვლადი თქვენ უნდა ვუთხრა Clang როგორია მისი ტიპის.
PHP არის პატარა lazier.
ის თავისუფლად აკრეფილი გაგებით, რომ
თქვენ შეგიძლიათ მოძრავი და chars და სიმები
და ints და ა.შ., მაგრამ ენა თვითონ
ნამდვილად არ აღელვებს ის, რასაც თქვენ დააყენა შიგნით ცვლადი.
თქვენ არ ინფორმირება ეს წინასწარ რა ტიპის მონაცემის
ხდება ცვლადი.
ეს მთლიანად თქვენზეა, ამიტომ ეს არის ლამაზი
წელს რომ თქვენ არ ინერვიულოთ იმდენი შესახებ მონაცემები აკრეფის
და შემაშფოთებელია, თუ რა თქვენი არგუმენტებია და სხვ.
ეს ასევე ნიშნავს, საბოლოოდ ფუნქციების PHP ვაპირებთ შეძლებს დაბრუნებას
ან int უმეტესი დრო და იქნებ ერთხელ ხოლო
ისინი ყველაფერს დაბრუნების bool, ლოგიკური ცრუ, მაგალითად, რომ ნიშნავდეს, რომ რაღაც მოხდა ისე.
ეს გვაძლევს რამდენიმე upsides, არამედ გახდის us სახის მიერ დიზაინი
ცოტა lazier როდესაც საქმე მონაცემები აკრეფით.
>> რა არის იქ გვახსოვდეს აქ?
ცვლადები გამოიყურება საკმაოდ like this, ამიტომ $ s = "Hello, World".
სწორედ ალბათ inferable საწყისი წინა მაგალითად,
და ჩვენ გვაქვს სხვა ტიპის loop.
ეს ერთი ჩვენ რეალურად ვხედავთ ერთხელ ხოლო რადგან საკმაოდ მოსახერხებელი,
foreach მშენებლობა.
ამ შემთხვევაში, foreach loop იღებს შიგნით მისი ფრჩხილებში 3 სიტყვა ჩვეულებრივ,
$ რაღაც პირველი, რაც მასივი გსურთ iterate ზე წევრები,
მაშინ სიტყვასიტყვით სიტყვით როგორც, და შემდეგ ბოლოს,
კიდევ ერთი ცვლადის სახელი, რომ თქვენ მისაღებად არჩევანი.
ეს შეიძლება იყოს foo, ბარი, ან ელემენტს,
და რა ამ შენება არ
არის თუ $ მასივი შეიცავს 10 ელემენტები
ყოველ iteration ამ მასივი-უკაცრავად, ყოველ iteration ამ loop
ცვლადში ელემენტს აპირებს განახლდება
იყოს პირველი ელემენტია მასივი, მაშინ მეორე ელემენტია მასივი,
მაშინ მესამე ელემენტს მასივი, რითაც obviating საჭიროება
გავაკეთოთ ოდნავ შემაშფოთებელი კვადრატული ფრჩხილი ნოტაცია და
$ მე რათა ინდექსი შევიდა მასივი.
PHP ს ყველა რომ მუშაობა თქვენთვის და ყველა iteration
უბრალოდ ხელში თქვენ შემდეგი ელემენტს საწყისი მასივი
თქვენს გარეშე იცოდეს შესახებ ან აინტერესებს მისი რიცხვითი ინდექსი საიდან.
>> და მერე ბოლოს, არის, თუმცა ერთი სხვა თვისება PHP
რომ იქნება უკიდურესად სასარგებლო, განსაკუთრებით მაშინ, როდესაც ჩვენ ვიწყებთ პროგრამირების ინტერნეტში,
და ეს ცნობილია, როგორც ასოციაციურ მასივში.
კოლექტორები, რომ ჩვენ ვიცით, ჯერჯერობით, როგორც 20 წამი წინ
და წარსულში 8 კვირის არიან რიცხობრივი ინდექსირებული მასივები,
სახის ტრადიციული კოლექტორები სადაც ინდექსების are ints,
0, 1, 2, ყველა გზა on up.
ასოციაციური მასივით არის ბევრად უფრო ძლიერი.
ისინი საშუალებას გაძლევენ აქვს თვითნებური გასაღებები,
თვითნებური მაჩვენებლების და თვითნებური ღირებულებებს.
ხოლო ტრადიციული array ეს 0, 1, 2,
ასოციაციურ მასივში შეგიძლიათ ინდექსი
ან გასაღები foo რომლის ღირებულება არის ბარი.
ამის შემდეგ შეგიძლიათ კიდევ ერთი გასაღები რომლის სახელიც baz და რომლის ღირებულება არის qux.
>> ერთხელ, სულელური კომპიუტერულ მეცნიერებათა generic ცვლადი სახელები აქ,
მაგრამ საქმე ისაა, რომ ამ მასივი ამჯამად არ აქვს bracket 0 ან bracket 1.
ის ნაცვლად გვექნება bracket foo და ფრჩხილი baz.
ეს არის ბევრი უფრო მრავალმხრივი, რომ ჩვენ ვაპირებთ შეძლებენ გაერთიანდნენ
სიტყვა სხვა სიტყვა, გასაღებები ფასეულობებით სრულიად თვითნებურად,
და ჩვენ ვაპირებთ, რომ შეუძლია მიიღოს იმ ფასეულობების უკან მუდმივ დრო
რადგან ქვეშ Hood რა ასოციაციურ მასივში
ნამდვილად არის hash მაგიდასთან.
შეგახსენებთ, რომ hash მაგიდა საშუალებას გაძლევთ დააყენა ზოგიერთ შეყვანის
მინდა ჩაიდოს სიტყვა დავით, თუ გსურთ ჩადეთ დავით შევიდა გარკვეული სახის ლექსიკონი,
და მაშინ დაიბრუნებს გარკვეული მნიშვნელობა, როგორც წესი.
იმ შემთხვევაში, speller, ჭეშმარიტი ან მცდარი.
დავით ან რასაც სიტყვა არის ან არ არის ლექსიკონში.
ასოციაციურ მასივში მართლაც მხოლოდ hash მაგიდა,
მაგრამ ბევრად უფრო მოსახერხებელი განსახიერება იყო.
როგორც ვნახავთ, ეს აპირებს საშუალებას მოგვცემს გავაკეთოთ ზოგი რამ
ძალიან, ძალიან მარტივად.
>> მოდით შევხედოთ ზოგიერთი ძირითადი PHP
მაგალითები და რა შეგვიძლია გავაკეთოთ ამ ენაზე.
ნება მომეცით წავიდეთ წინ და ქმნის ჩვენს წყაროს დირექტორია დღეს
ფაილი სახელად hello1.php.
ეს ფაილი მეტი კომენტარი ვიდრე ფაქტობრივი კოდი,
ნება მომეცით, ფაქტობრივად ამოიღონ ყველა კომენტარი ფაილი
და წარმოგიდგინოთ ალბათ მარტივი PHP პროგრამის უფლება აქ.
5 ხაზით და ზოგიერთი ასეთი თეთრი სივრცე,
ასე შეამჩნევთ რამოდენიმე ძირითადი განსხვავებები აქ.
ფაილი ეწოდება hello1.php.
პირველივე ხაზი, თუმცა, არის <? Php.
მსგავსი სულისკვეთებით უნდა HTML,
რომ თანმიმდევრობა გმირები ეუბნება კომპიუტერი
"Hey, კომპიუტერი, აქ მოდის პროგრამა, რომელშიც ჩართულები ვართ PHP-ში."
იგი ქმნის დარწმუნებული ეს არ დაბნეული, რომ ზოგიერთი სხვა ენაზე.
Line 2 არის საინტერესო თეთრი ფართი.
Line 3 არის ჩვენი ძველი მეგობარი printf,
ამ დროის კონტექსტში PHP.
PHP აქვს საკუთარი ვერსია printf რომელიც ისე იქცევა ზუსტად იგივე,
ასე რომ, ეს უბრალოდ აპირებს ბეჭდვა "Hello, World".
და შემდეგ ამ საპირისპირო tag აქ,?>, იმას ნიშნავს, რომ ის ჩემი PHP კოდი.
>> ვნახოთ როგორ აწარმოებს ამ.
მე ვაპირებ დავუბრუნდე ჩემს ტერმინალის ფანჯარაში აქ.
მე ვაპირებ წასვლას ჩემი PHP დირექტორია.
გაითვალისწინეთ, რომ ჩვენ გვაქვს მთელი თაიგული ფაილი პირველი რომელთაგან ერთი hello.php.
ნება მომეცით წავიდეთ წინ და აწარმოებს ამ, hello1.php, შეიყვანოთ.
ნებართვა უარყო. Okay.
როგორ არ გვაქვს დაფიქსირდა რამ, როგორიცაა ამ წარსულში?
რა არის ეს? >> [Inaudible სტუდენტი საპასუხოდ]
ჩვენ გვჭირდება წაიკითხოთ და დაწეროთ, მაგრამ ნება მიბოძეთ გავაკეთოთ ls-l.
დამახსოვრება ამ გარკვეულწილად cryptic გამომავალი რომლის hello1
როგორც ჩანს, იკითხება და ჩაწერადი ჩემს მიერ
მაგრამ იკითხება მიერ ყველას.
თურმე ამ რეალურად არ არის ნაბიჯი სწორი მიმართულებით.
განსხვავება, კიდევ ერთხელ, ერთად ინტერპრეტირებული ენა
არის თუ არა პროგრამა პირდაპირ.
თქვენს ნაცვლად აწარმოებს თარჯიმანი და გადასცეს იგი კოდი
რომ თქვენ წერილობითი ასე რომ შესაძლებელია ინტერპრეტაცია ეს ხაზს.
ამ შემთხვევაში, თარჯიმნის ან პროგრამის მე ნამდვილად გინდათ აწარმოებს
არის სიტყვასიტყვით მოუწოდა PHP.
>> სადღაც ამ დისკის მოწყობილობის არსებობს პროგრამა
ვინმე წერს მოუწოდა PHP, ან Windows php.exe.
რა მე ვაპირებ აქ არის მე ვაპირებ რეალურად აწარმოებს PHP
მაგრამ მისთვის, როგორც ბრძანების არგუმენტი კოდი, რომელიც მე დავწერე,
და მაშინ მე დააშორებს და დააჭიროთ.
ის მუშაობს ჩემი პროგრამა ჩემთვის, ყველაზე ქვედა, მარცხნიდან მარჯვნივ.
ნება მომეცით წავიდეთ წინ და ქმნის უმნიშვნელო ეწინააღმდეგება ამ.
In hello2.php გაფრთხილების, რომ ეს ძალიან
ძირითადად კომენტარები, ნება მომეცით დავაღწიოთ იმ როგორც განადგურების,
და რაც აშკარად განსხვავებული ახლა ამ ფაილს?
არსებობს ამ ახალი ხაზის, გარკვეულწილად cryptic ზედა.
შეესაბამება 1 ის #! / Bin / php.
ბინ არის კონვენციის Linux და Mac OS შეეხება binaries,
ასე / bin ნიშნავს ეს ფოლდერი შემცველი bunch of binaries
რომელიც პროგრამირდება, რომელთაგან ერთი PHP.
#! არის მეტსახელად shebang,
რაც სწრაფი გზა რომ, და რას ნიშნავს
ის არის, რომ როდესაც თქვენ აწარმოებს ამ პროგრამის არის იქ მინიშნება ზედა ფაილი
რომ ეუბნება კომპიუტერი რა თარჯიმანი გამოიყენოს.
>> იგი იღებს პატარა შემაშფოთებელი თითქოს ვუთხრა თქვენს მომხმარებლებს და თქვენი კლიენტები
"Hey, ჩვენ წერდა ამ პროგრამის მოუწოდა hello1.php."
ყველა თქვენ უნდა გააკეთოთ სამუდამოდ აწარმოებს PHP და შემდეგ სახელი ამ პროგრამის.
გულწრფელად ვამბობ, რომ ის უბრალოდ იყოს გავალამაზოთ გასაშვებად hello1.php,
და მართლაც, ჩვენ შეგვიძლია თუ ჩვენ შემდეგ.
ნება მომეცით წავიდეთ წინ და ნუ ls-l, და ცნობა, hello2 მაინც უბრალოდ წაიკითხა წერენ
და შემდეგ წაიკითხა წაიკითხა, ასე, რომ შეიძლება ჯერ არ გააკეთებს, hello2.php.
მაგრამ ჩვენ გააცნო ამ ოდესმე ასე მოკლედ ბოლო დროს, chmod ბრძანება.
თუ chmod + x, რაც იმას ნიშნავს, ყველა Plus executability,
და შემდეგ hello2.php და მერე ls-l ისევ შეამჩნევთ რა შეიცვალა.
ერთი, Linux არის გვიჩვენებს ჩემთვის ფაილის სახელი მწვანე გადმომეცა იდეა
რომ შესრულებადი, თუმცა უფრო მნიშვნელოვანია ის, რომ მარცხენა მხარეს
შეამჩნევთ, რომ ცოტა წარმოადგენს x for შესრულებადი უკვე მითითებული.
რა არის ეს იმას ნიშნავს, არის შემიძლია აწარმოებს ./hello2.php როგორც ყოველთვის,
'Enter, და ამის გამო shebang დროს ძალიან ზევით ფაილი
რომ მინიშნება, კიდევ ერთხელ, რომ Linux რომ ამბობს
გამოიყენოს ეს თარჯიმანი გასაშვებად ამ ფაილის.
არ ინერვიულოთ შესახებ აიძულა მომხმარებელს რეალურად აკრიფოთ იგი.
>> და რაც ლამაზი ახლა არის მისი სახის შეუსაბამო ჩემი კლიენტებს ან ჩემი მეგობრები
რა ენაზე დავწერე ეს პროგრამა, ასე, რომ შეიძლება წავიდეთ წინ ერთად MV
და გადარქმევა ამ რამ hello2, მაგალითად.
და ახლა, თუ ./hello2
და დააშორებს ჩემი პროგრამა განაგრძობს აწარმოებს.
ეს ფაილი გაფართოებები არიან ადამიანის კონვენცია, რომ აუცილებელია
ამისთვის რაღაც Clang და ჩადება, რომლებიც ვერ პოულობენ მათთვის.
მაგრამ PHP, მე ვერ ვუწოდებთ ამ ფაილის გაფართოება არაფერი მინდა.
მე ვერ შეასრულა მსოფლიოს ფიქრობდა, რომ მე ნამდვილად კარგი Ruby,
მე და შეეძლო დაეწერა hello2.rb და შემდეგ აწარმოებს ამ,
და voila, ახლა კი ისეთი Ruby ვერსია, რომელიც არის სრული სიცრუე.
მაგრამ ფაილის გაფართოებები არიან უაზრო
თუ ფაილი შესრულებადი და აქვს ამ სპეციალური მინიშნება ზედა ფაილი.
>> ახლა, როგორც განზე, ნება მომეცით გაჩვენოთ სწრაფად ვერსია 3,
რაც სახის სასარგებლო შეასრულა იცოდეს.
In hello3 გავაკეთე რაღაც ოდნავ არასწორი
რომ მე განაახლოთ კოდის ხაზზე.
In ვერსია 3 აღმოჩნდება, რომ ყველაზე Linux კომპიუტერები
არსებობს პროგრამის მოუწოდა env გარემოს,
და რა შეგიძლიათ გააკეთოთ, აქ არის თუ თქვენ არ ვიცი სად PHP
დამონტაჟებულია ადგილობრივ ხისტ დისკზე, რადგან ეს ნამდვილად შეეძლო განსხვავება კომპიუტერი
რომ ვინმე იყენებს, env უბრალოდ ამბობს აწარმოებს env,
რაც ყველაზე სისტემებისა და გაერკვნენ, სადაც PHP არის.
უბრალოდ საერთო შეასრულა ასე რომ თქვენ არ უნდა ფიქრი მოძიებაში, თუ სად არის პროგრამა.
მაგრამ თუ მომსახურებას, რათა გაირკვეს, სად პროგრამა და თქვენ არ ზრუნავდა დღემდე
თქვენ შეგიძლიათ გამოიყენოთ რომელიც ბრძანება.
>> ნება მომეცით დააშორებს და გაცნობის რომელიც PHP,
და შენიშნავს, მეუბნება ეს ფაქტობრივად usr / bin / php.
ეს სახის ტყუილი. ეს ასევე ბინ.
უბრალოდ გვიჩვენებს ჩემთვის პირველი ჰიტი.
თუ თქვენ ოდესმე გვაინტერესებდა, სადაც Clang არის, რომელიც Clang, რომ წელს usr / bin / clang,
რაც, usr / bin / გააკეთოს და რა უნდა ნიშნავდეს ეს არის მთელი ამ ხნის
თქვენ შესაძლოა აკრეფით usr / bin / clang შემოსვლა გასაშვებად Clang,
მაგრამ სახის რუტინული გავაკეთოთ, რომ, ასე ზოგიერთი ფოლდერები
მოსწონს usr / bin და ბინ არიან ვივარაუდოთ, რომ იყოს დეფოლტის
ასე კომპიუტერი იცის თვალი მათ თქვენთვის.
ნებისმიერი კითხვების წერილობით სუპერ, სუპერ მარტივი Hello World პროგრამა
PHP-ში და შემდეგ გაშვება ვერ?
რადგან ახლა დავიწყებთ დანერგვა უფრო მყარი სინტაქსი.
ყველა უფლება, აქ ჩვენ მივდივართ.
ეს პროგრამები ჩვენ ვნახეთ პრაქტიკულად ყველა მათგანი ადრე.
>> თუ მე ქმნის, მაგალითად, მოდით beer1.php,
ჩვენ არ გავლა რამდენიმე ვარიანტი, მაგრამ რა გავაკეთე
იყო მე დაჯდა და გადაისხა ან მოაქცია
ჩემი C კოდი PHP კოდი აქ.
უმეტესობა ზევით ფაილი კომენტარი აქ.
თურმე არსებობს ერთი ახალი ფუნქცია ჩვენ გვჭირდება მოუწოდა readline.
GetString იხსენებენ, საწყისი კვირა 0 Onward იყო CS50 რამ.
PHP გააჩნია საკუთარი მოსახერხებელი ფუნქცია მოუწოდა readline
რომ იღებს 1 არგუმენტი, რომელიც განსაზღვრავს სწრაფი
რომ გსურთ დავანახოთ მომხმარებელს, და რა readline აკეთებს
არის ის დააბრუნებს რასაც მომხმარებლის ტიპის სისტემაში
ამ შემთხვევაში, მე გამოცხადების ცვლადში $ n.
მე შენახვის მასში დაბრუნების ღირებულება readline
შემდეგ რამაც მომხმარებლის ამ სიმებიანი.
უბრალოდ უკან, რეალურად აწარმოებს ამ რამ, ნება მომეცით წავიდეთ წინ
და აწარმოებს PHP beer1.php.
რამდენი ბოთლი იქნება? მოდით უბრალოდ 2 ამ დროს.
შეიყვანეთ. ეს იყო.
>> პროგრამა არის ფუნქციურად იდენტურია C ვერსია საწყისი კვირის წინ.
მაგრამ syntactically ვნახოთ რა განსხვავებული.
შემდეგ მივიღებ int საწყისი მომხმარებლის გაფრთხილების, რომ მე ვაკეთებ რაიმე შეცდომა შემოწმებისას,
და თუ N ნაკლებია, ვიდრე 1 მე დატოვა და მე ამობეჭდოთ
უკაცრავად შეტყობინება მომხმარებლის და გასვლის: 1.
ესეც ცოტა განსხვავებული.
დო რა ვქნათ? In C დავბრუნდით 1.
In PHP გამოხვიდეთ ერთად 1, რომელიც გულწრფელად არის ვფიქრობ ცოტა უფრო ინტუიციური
იმიტომ, რომ თქვენ ფაქტიურად არსებული პროგრამა.
ყველა უფლება, ხოლო შემდეგ ქვემოთ აქ შემაშფოთებელი სიმღერა იდენტურია syntactically
გარდა ცვლადი, ამიტომ ქვემოთ აქ ხაზი 24 Onward
შეამჩნია ჩემი ამისთვის მარყუჟი თითქმის იგივე,
მაგრამ მე $ წინაშე მე და N,
და რაც ასევე დაკარგული დარგობრივ 26 რომ ჩვენ გვქონდა წარსულში
როდესაც გამოცხადების ცვლადი მე?
იქ არ არის ტიპის.
ეს არასწორი in PHP ვთქვა int.
თქვენ უბრალოდ არ უნდა გავაკეთოთ, რომ.
კომპიუტერი, თარჯიმანი PHP არის smart საკმარისი გააცნობიეროს
რომ თუ თქვენ დააყენა ნომერი $ მე ის მკურნალობა
როგორც რაოდენობის თქვენთვის.
და შემდეგ ქვევით აქ plug in $ i, $ i, $ i - 1.
ყველა ეს იგივე, ხოლო შემდეგ ქვემოთ აქ ვაკეთებთ "Wow, რომ შემაშფოთებელი" printf
და შემდეგ გასვლა (0).
>> ერთხელ, takeaway აქ ის არის, რომ მიუხედავად იმისა, რომ ჩვენ ვაპირებთ გაატაროთ შედარებით
ცოტა დრო PHP, რა თქმა უნდა წინააღმდეგ, რასაც ჩვენ მოახერხა C,
თითქმის იგივე, და ა.შ. რასაც ჩვენ გავაკეთებთ დღეს და მომავალ კვირას
და მის ფარგლებს გარეთ, ფოკუსირება ნამდვილად ზოგიერთ ახალი იდეები.
მხოლოდ ვხედავ, რომ ერთი სხვა რამ არ დაუხატავს მეტი C,
ეს იყო სუპერ მარტივი პროგრამა ჩვენ გააკეთა კვირა 1
ან 2 რომ cubed ღირებულება.
მაგრამ რა იყო საინტერესო დროს ამ პროგრამის შესახებ არის ის, რომ
გააცნო ცნება საბაჟო წერილობითი ფუნქცია რომ ჩვენ თვითონ დაწერა.
სინტაქსი PHP-ში თითქმის იგივე.
აი ჩემი პროგრამა up დაბრუნება.
გაითვალისწინეთ კვლავ არ არსებობს რაიმე ცნება ძირითადი.
დავიწყო წერა კოდი, და ეს რა ხდება მისაღებად ახორციელებს თარჯიმანი.
მე ამობეჭდოთ x არის 2, სავარაუდოდ.
მერე აცხადებენ cubing ...
მაშინ მოვუწოდებ კუბი ფუნქცია და კორიდორი $ x
და მივანიჭოთ დაბრუნების მნიშვნელობა $ x.
მერე ამტკიცებენ, რომ ის cubed, და მერე ამბობენ, რომ ეს, რაც იმედია
იტყვის x არის 8.
სინტაქსი ფუნქცია PHP ოდესმე ისე ოდნავ განსხვავებული.
ერთხელ დაკარგული არის დაბრუნების ტიპის.
ერთხელ დაკარგული არის დაბრუნების ტიპი და ასევე დაკარგული არის ის, რაც სხვა ტიპის?
[Inaudible სტუდენტი საპასუხოდ]
ისე, okay, რომ კარგია. მოდით, დაუბრუნდეს, რომ მეორე.
>> ჩვენ არ გვაქვს, მაგალითად, int აქ.
ჩვენ არ, მაგალითად, არ int აქ იმიტომ, კვლავ, PHP
თქვენ უბრალოდ არ სჭირდებათ და ეს არ უნდა გავაკეთოთ,
არამედ არსებობს ამ ახალი სიტყვით მოუწოდა ფუნქცია.
PHP-ში თითქმის პატარა ნათელი, რადგან როდესაც გსურთ ფუნქცია
თქვენ სიტყვასიტყვით ამბობენ ფუნქცია, თქვენ ეს სახელი და შემდეგ გამოყოფილია მძიმეებით
თუ რომელიმე მისი არგუმენტები.
არ უნდა ვთქვათ, ბათილად ან არაფერი რომ და შემდეგ დაბრუნების იგივეა,
$ * $ * $.
რაც ასევე დაკარგული? Sammy აღნიშნა ამ out აქ.
ზედა ფაილი მთლიანად არსებობს PHP ასევე არის პროტოტიპი.
ესეც მიერ დიზაინით.
ენები და ზეპირი მოსწონს PHP არიან მსოფლიოს სასურველი სტუმარი გახდებით ვიდრე C ოდესმე იყო
წელს compilers მოსწონს Clang.
>> შეგახსენებთ, რომ Clang, თუ არ ვუთხრა მას, რომ კუბი არსებობს,
თუ არ ვუთხრა, რომ არსებობს printf როგორც პროტოტიპი
ან # მოიცავს, ასევე, იგი აპირებს დაწეროთ თქვენ და არც კი შეადგინოს თქვენი კოდი.
PHP და უფრო თანამედროვე ენებზე ბევრი მსოფლიოს სასურველი სტუმარი გახდებით, როდესაც საქმე ამ.
ისინი მიიღებენ მას საფუძველზე თავად წაიკითხოს მეშვეობით ყველა თქვენი კოდი
და შემდეგ დაწეროთ თქვენ მხოლოდ იმ შემთხვევაში, თუ იგი აღმოაჩენს კუბი არსად.
არ აქვს მნიშვნელობა, თუ კუბი არის ბოლოში ან დაბრუნება, ან თუნდაც ცალკეული ფაილი.
PHP და მსგავსი ენებზე ახლა smart საკმარისი მოველით
ზე ყველაფერი ადრე deeming თქვენ, როგორც დაუშვა შეცდომა.
სად რომ დაგვტოვებთ?
>> მოდით ერთი ბოლო მაგალითია აქ პირობებში,
და თუ გახსენით conditions2.php გაფრთხილების ძალიან
სინტაქსი აქ არის თითქმის იგივე.
მე გამოყენებით readline ნაცვლად GetString, მაგრამ რომ ხაზი იგივეა, რაც ადრე,
"მინდა მთელი გთხოვთ."
მე მაშინ აქვს, თუ მდგომარეობა, სხვას თუ, და შემდეგ სხვას,
მაგრამ ფუნქციურად ეს პროგრამა ასევე იდენტურია, რაც ჩვენ გავაკეთეთ კვირის წინ
ასე რომ, თუ მე აწარმოებს ამ რამ, PHP of conditions2,
მე და მისცეს მას ხმების მსგავსად 23 -
მე აიყვანეს დადებითი რიცხვი. თუ მე მას -1 მე აიყვანეს უარყოფითი რიცხვი.
თუ მე მას 0 მე მართლაც აიყვანეს 0.
ასე რომ ვის აინტერესებს ეს ყველაფერი?
ისე, ერთი გართობა სახის წვრთნები აქ
ყოველ შემთხვევაში ჩემთვის იყო და უკან დაბრუნდა და ვნახოთ, რამდენად სწრაფად შემეძლო განახორციელოს pset 5,
misspellings pset.
შეგახსენებთ, რომ ამ ფაილის მოუწოდა speller.c,
და იქ იყო ფაილი სახელად dictionary.c.
რა მქონდა იყო I ტიპის გაატარა რამდენიმე წუთში მე და მოაქცია C კოდი
to PHP კოდი, და ჩვენ არ დახარჯოს დიდი დრო ჩართულია speller
რადგან, როგორც pset 5 თქვენ არ ნამდვილად სჭირდებათ
გაატაროთ ბევრი დრო speller თავად, რადგან თქვენს ყურადღებას იყო ლექსიკონი.
>> საკმარისია იმის თქმა, რომ თუ წაიკითხავთ მეშვეობით speller,
ამ ფაილის აქ, ეს საკმაოდ ბევრი ეკვივალენტი C კოდი
მივეცით თქვენ pset 5.
მე უბრალოდ დასძინა ზოგიერთი $ ადგილებში.
მე შეიცვალა გარკვეული ფუნქციის სახელები თუ არ არსებობს PHP.
თუმცა ერთი რამ დამატებითი აქ, preg_match,
რაც პატარა fancier გზას აკეთებს რაღაც, მაგრამ ამას დაბრუნებას, რომ საბოლოოდ.
მაგრამ მოკლედ, speller თითქმის იდენტურია და, თუ გადავხედავთ ძალიან ბოლოში
თუ რას საბოლოოდ SpitS გარეთ არის ეს აქ,
სიტყვა misspelled, სიტყვების ლექსიკონი, სიტყვა ტექსტში.
ყველა უფლება, ასე რომ საინტერესოა ახლა არის შემდეგი.
ზედა ჩემი ფაილის ვარ მოითხოვს dictionary.php.
ისევე, როგორც C უკვე # მოიცავს PHP აქვს განსაკუთრებული ფუნქცია მოუწოდა მოითხოვს
რომ საკმაოდ ბევრი აკეთებს იმავეს, საჭიროებს ფაილის მოუწოდა dictionary.php.
როგორ შემიძლია წასვლა შესახებ ახორციელებს pset 5?
ნება მომეცით წავიდეთ წინ და გახსენით ფაილი აქ.
ნება მომეცით მიიღოს პატარა მინიშნება აქ.
და ნება მომეცით შექმნა ახალი ფაილი და დაიწყოს მოუწოდებდა ამ dictionary.php.
ნება მიბოძეთ სხვა ფოლდერი ასე რომ ჩვენ შეგვიძლია გავაკეთოთ ეს ცოცხალი.
და ახლა მე zoom სისტემაში
მე ვაპირებ დაიწყება ჩემი PHP ფაილი ღია bracket php დახურული ფრჩხილი.
ხოლო შემდეგ აქ იყო რამდენიმე ფუნქციების მჭირდებოდა განახორციელოს ამისთვის pset 5,
ასე დავიწყებ განხორციელების ზოგიერთი ასეთი,
ასე ფუნქციის შემოწმება, რომელიც უნდა მიმეღო სიტყვა როგორც არგუმენტი.
ჩვენ ყველაფერს გავაკეთებთ, რომ და დაბრუნდება ის მომენტი.
>> იყო ფუნქციის დატვირთვის, რომელსაც რა როგორც არგუმენტი?
ლექსიკონი, ამიტომ ფაილის, რომ მე რეალურად სურდა ჩატვირთვა.
იყო ფუნქცია ზომა, რომელიც არ მიუღია რაიმე არგუმენტები
და იყო ფუნქციის-რა იყო სხვა?
განიტვირთოს, რომელიც არ მიუღია რაიმე არგუმენტები ან.
ეს არის 4 ფუნქციებს, მე უნდა ახლა განახორციელებს PHP,
და რა მე ვაპირებ გააკეთოთ წავიდეთ წინ და ამის გაკეთება.
ბევრი გამოყენებულია hash მაგიდაზე pset 5,
ნება მომეცით, წავიდეთ წინ და შევქმნათ hash მაგიდაზე PHP.
შესრულებულია.
რომელიც მაძლევს hash მაგიდასთან. ისე, რატომ?
ერთი, ცვლადი ეწოდება $ მაგიდა, მხოლოდ conjure up იდეა hash მაგიდასთან.
კვადრატულ ფრჩხილებში, თუმცა, გავიხსენოთ, წარმოადგენენ რა?
Array, მაგრამ PHP მასივები არ უნდა რიცხობრივი ინდექსირებული.
ისინი ასევე შეიძლება ასოციაციურ მასივები,
რაც იმას ნიშნავს, თქვენ შეგიძლიათ თვითნებური გასაღებები და ღირებულებები.
>> ჰგავს წელს pset 5, იმ თქვენ ვინ hash table შესრულება
თქვენ ალბათ ჩასმული სიტყვა და შემდეგ შეიყვანეს იგი ჯაჭვის უკავშირდება სიები
ან თქვენ ინახება ღირებულება ჭეშმარიტი სადღაც ან რაღაც რომ ეფექტი.
თქვენ რატომღაც გაიხსენა ის ფაქტი, რომ სიტყვა იყო.
ახლა რომ იქნება ჩემი hash მაგიდა,
და ახლა წასვლა შესახებ ახორციელებს გამშვები ფუნქცია
მე უბრალოდ უნდა გამოიყურებოდეს შიგნით რომ hash მაგიდა
და თუ სიტყვა არის იქ.
რა მე ვაპირებ გააკეთოთ მე ვაპირებ ვთქვა, თუ-
ვთქვათ isset, რომელიც PHP ფუნქცია რომ სიტყვასიტყვით უბრალოდ ნიშნავს არის გასაღები კომპლექტი,
ასე isset ($ table [$ სიტყვა],
და თუ ასე იქნება TRUE.
ეს არის ის. სწორედ pset 5 PHP-ში.
ისე, წელს სამართლიანობისა, okay.
Else დაბრუნების ყალბი, ასე რომ არ არსებობს.
რა მართლაც ხდება?
ისე, თუ მაგიდის ან hash table აქ უფრო ზოგადად-
არის ასოციაციურ მასივში რაც იმას ნიშნავს, თქვენ შეგიძლიათ ინდექსი მივანიჭო
ერთად სიტყვის, როგორიცაა "სიტყვა" და თქვენ უნდა დავუბრუნდეთ გარკვეული მნიშვნელობა.
>> ჩვენ სახის მიღების ერთი ნაბიჯით წინ საკუთარ თავს.
ეს იქნება ერთგვარი ლამაზი თუ ჩვენ რეალურად დატვირთული ფაილის პირველი,
ასე დატვირთვის არ არის საკმაოდ მარტივია, მაგრამ ნება მიბოძეთ წავიდეთ წინ და Whip up
მართლაც სწრაფი განხორციელება დატვირთვა.
ნება მომეცით წავიდეთ წინ და ვთქვათ სიტყვა იღებს ფაილის ლექსიკონი.
ფაილი ფუნქცია PHP იხსნება ფაილი
და დაბრუნდა თქვენ მასივი ყველა სიტყვა, რომ ფაილი,
უბრალოდ ხელში ისინი თქვენთან.
ეს იყო დიდი ტკივილი იყო და არა?
ახლა foreach, ეს არის ჩვენი ახალი შენება, foreach ($ სიტყვები როგორც $ სიტყვა).
ეს loop იწყებს iterating მეტი მასივი სიტყვა
და მივანიჭოთ, რათა $ სიტყვას ცვლადი თითოეული სიტყვა ფაილის
პირველი მეორე მესამე მეოთხე ყველა გზა
ასე რომ არ უნდა გავაკეთოთ შემაშფოთებელი [i] ნოტაცია და ასე შემდეგ.
და რა მე უბრალოდ აპირებს თითოეული ამ სიტყვა
არის ჩაწეროთ იგი ჩემი მაგიდაზე ინდექსირებას შევიდა მაგიდა
და შემდეგ აკეთებს ჭეშმარიტი რადგან უნდა გვახსოვდეს
რომ სიტყვა არის ჩემი ლექსიკონის ყველა ნამდვილად უნდა გავაკეთოთ
არის სახის Flip ბიტიანი და ამბობენ ამ სიტყვას ჩემი hash მაგიდასთან არსებობს, მართალია.
და თუ ეს არ არსებობს, მე არ მაქვს მკაფიოდ დააყენა ცრუ,
სხვაგვარად მე უნდა დააყენოს ყალბი ყველა შესაძლო სიტყვა სამყაროს.
>> ეს suffices ჩემთვის უბრალოდ შექმნას ინდექსი ფასი
ჭეშმარიტი თუ სიტყვა ფაქტობრივად ჩემი hash მაგიდასთან.
ახლა, მე ჭრის რამდენიმე კუთხეების აქ რომ მე ტალღის ხელები დროს ახლა,
მაგრამ ახლა დატვირთვის ფუნქცია კეთდება.
მე ვტვირთავ ყველა სიტყვებს ფაილის შევიდა მასივი.
მე iterate მეტი რომ მასივი, და თითოეული სიტყვა მასივი
მე შეაერთედ იგი ჩემი hash მაგიდასთან 1 ხაზი კოდი.
ეს არის fun. თქვენ იცით, როგორ შეგვიძლია განვახორციელოთ ზომა არის?
ისე, ზომა ყოველთვის საკმაოდ მარტივია, წელს სამართლიანობისა.
აქ ჩვენ შეგვიძლია უბრალოდ დააბრუნოს გრაფი მაგიდასთან.
რომ საკმაოდ ადვილია ძალიან, ითვლიან ხმების რამ მაგიდასთან.
სწორედ პრაქტიკულად სახის არ ყველაზე ეფექტური.
მე უნდა ალბათ ცვლადში ზომა ასე რომ ჩვენ შეგვიძლია ამის გაკეთება
მუდმივ დრო, მაგრამ ეს საკმაოდ მარტივია.
ოჰ, და შემდეგ განიტვირთოს, თუ ჩვენ მართლაც გვინდა ვიყოთ anal აქ
შეგვიძლია ვთქვათ, რომ ასე განიტვირთოს რაღაც.
თქვენ უბრალოდ მითითებული ცვლადი ტოლია ცარიელი მასივი,
და იგი იღებს მოშორება ყველაფერი, რაც იქ იყო.
არ უნდა დარეკვა უფასო.
>> ისევ და ისევ, მე მოჭრილი ზოგიერთი კუთხეებში, და მე ბოდიშს მინიჭების პრობლემა კომპლექტი 5
ალბათ, C, მაგრამ თუ ჩვენ ახლა წავიდეთ წინ და აწარმოებს ამ,
მე ვაპირებ რეალურად აწარმოებს ვერსია რომ დავწერე წინასწარ
ასე რომ მე არ გაუკეთებია syntactical შეცდომების გარეშე.
ნება მომეცით წავიდეთ წინ და აწარმოებს speller. გამოყენება იგივეა.
აქ არის ლექსიკონის ფაილის რომელიც მხოლოდ შეიცავს სიტყვას foo.
აქ არის ტექსტური ფაილი რომელიც შეიცავს მხოლოდ foo ბარი.
მოდით მართლწერის შემოწმება ამ, ასე speller გამოყენებით ამ ლექსიკონის ფაილის ამ ტექსტური ფაილი.
თუმცა ერთი misspelled სიტყვა, ბარი, და voila.
გაკეთდეს pset 5.
ავიღოთ 5 წუთიანი შესვენება აქ, და ჩვენ დავბრუნდებით და უფრო PHP.
ყველა უფლება, ჩვენ უკან.
მოდით-hate me ხნით.
მოდით ახლა რეალურად თუ ეს არ იყო პოზიტიური
რეალურად განხორციელების ამ რამ PHP.
გაცემული, დასჭირდა 45 წამში განახორციელოს.
>> მაგრამ მოდით წავიდეთ წინ არის და აწარმოებს რამ.
ნება მომეცით წავიდეთ წინ და აწარმოებს C ვერსია
საქართველოს speller, და ჩვენ გაუშვით ერთი ყველაზე დიდი ფაილი,
რაც მეფე ჯეიმს ბიბლია.
და რომ აქ არის in-მოდით წასვლას ჩვენი C საქაღალდეში,
speller on მეფე ჯეიმს მე -5.
ბევრი misspelled სიტყვა.
Okay, ასე რომ გამომავალი ალბათ მივიღე თუნდაც times are ცოტა განსხვავებული,
თუ თქვენ გაქვთ ყველაფერი მუშაობს სწორად, და ასე, სულ რომ მართლწერის შემოწმება
მეფე ჯეიმს ბიბლია იყო .38 წამი, ასე რომ საკმაოდ კარგი გამოყენებით, რომ განხორციელებას.
ახლა ნება მომეცით წასვლას PHP ვერსია, რომელსაც ჩვენ უბრალოდ დაწერა.
ნება მომეცით აწარმოებს speller on მეფე ჯეიმს.
Whoops, იგნორირება, რომ შეცდომა. მე არასწორი დირექტორია.
Speller on მეფე ჯეიმს მე -5.
თითქმის გაკეთდეს.
>> Okay, თავშეკავებულად დამკვირვებელი განახორციელებს, რომ მეტი იყო 3 წამი იქ.
სწორედ ჭეშმარიტი ქრონომეტრაჟი.
თურმე დრო სჭირდება Spit უამრავი ტექსტი გარეთ
გამო buffering საკითხებზე, მაგრამ ხანგრძლივი ამბავი მოკლედ,
რომ იყო 3,15 წამი მანქანა დროს, CPU დრო,
წინააღმდეგ რა იყო ის მომენტი წინ?
მსგავსად .3.
ვგულისხმობ, ის ბრძანებით მაგნიტუდის ნელი, ასე რომ აქ არის ის, რომ
სასაცილოა შენელება მოდის?
ისე, როგორც უკვე შემთხვევაში საუკეთესო ნებისმიერი დიზაინის გადაწყვეტილება ჩვენ გააკეთა
in class გასული 9 კვირის იქ თითქმის ყოველთვის ამ tradeoff.
ზოგჯერ შორის მხოლოდ სივრცეში, ზოგჯერ შორის სივრცე და დრო,
სივრცე, დრო და განვითარების ძალისხმევა, და მართლაც აქ, მიუხედავად იმისა,
ჩვენ გადაარჩინა უზარმაზარი დრო, შესაძლოა, პოტენციურად 10-20-30 საათი
განვითარების დრო განხორციელების მართლწერის შემოწმება
მიერ whipping ეს რაღაც 45 წამში ამ ენის
ფასი ვიხდით არის, რომ ბრძანებით მაგნიტუდის ნელა შედეგად,
და ეს არის ზოგადად შემთხვევაში საუკეთესო ნებისმიერი ინტერპრეტირებული ენაზე
PHP, Python, Ruby, Pearl ან სხვები, რომლის დროსაც
თუ თქვენ აპირებს ის მეშვეობით თარჯიმანი და იგი წაიკითხოთ თქვენი კოდი
ხაზს, ყველაზე ქვედა, მარცხნიდან მარჯვნივ,
რომ შუამავალი აპირებს გარკვეული დრო საკუთარი,
და რას გრძნობენ აქ 3 წამში ნაცვლად .3 წამში
ის ფაქტი, რომ არსებობს ამ შუამავალი რომელმაც სიტყვასიტყვით ინტერპრეტაცია ჩვენი კოდი
ხაზს, და ღმერთმა ნუ ქნას, თუ თქვენ შიგნით loop
უზარმაზარი ფაილის შემცველი ასიათასობით სიტყვა.
>> რომ ოვერჰედის აპირებს დაამატოთ მდე და დაამატოთ მდე და დაამატოთ მდე და დაამატოთ მდე.
იყიდება ინსტრუმენტი, როგორიცაა ამ ალბათ არ საუკეთესო ენა გამოიყენოს განხორციელების
მართლწერის შემოწმება თუ immediacy არის საინტერესო თქვენი მომხმარებლებს და თქვენ.
მაგრამ ფუფუნება გვაქვს მომენტი, არის თუ
გამოიყენოს ენა, როგორიცაა PHP ან ბევრი ინტერპრეტირებული ენებზე
კონტექსტში Web, თუ საქმე, თქვენ სასარგებლოდ
რომ ინტერნეტში ბევრი ნელა, ვიდრე ყველაზე კომპიუტერებს.
თქვენ გაქვთ GHz CPU თქვენს კომპიუტერში, 2 GHz, იქნებ კიდევ უფრო ამ დღეებში.
მაგრამ რეალობა ინტერნეტში არსებობს მაღალი თანხის შეყოვნება
რის ამისთვის ბრაუზერის გაიგო სერვერი, მიუხედავად იმისა, რომ ჩვენ ვნახეთ გასულ კვირას
რომ საკმაოდ სწრაფი, ნახევარი millisecond ან იმდენად,
რომ ძალიან დასძენს მდე, და თუ თქვენ ჩამოტვირთვის რამ, როგორიცაა იმიჯი
ან Facebook ფოტო ან მიღების მყისიერი შეტყობინებები მეტი Facebook პრობლემები,
Gchat ან მოსწონს, ყველა ეს მრგვალი მოგზაურობა ჯერ
შორის ბრაუზერი და სერვერზე დაწყება რომ დაამატოთ მდე,
რაც თქვენს კონკრეტულ არჩევანს ენა ხშირ შემთხვევაში
არა ყველა, რომ შესაბამისი, ასე რომ თქვენ ჯარიმის გამოყენებით ოდნავ ნელა ენა
მოსწონს PHP ან Python ან Ruby
მაგრამ რომლისთვისაც უზარმაზარი upsides თქვენ და თქვენი კოლეგები
და თქვენი მეგობრები, რადგან თქვენ შეგიძლიათ განახორციელოს რამ ისე, ასე რომ ბევრად უფრო სწრაფად.
და უფრო მეტიც, თქვენ გაცილებით ნაკლები რისკის გარკვეული უსაფრთხოების ხარვეზები.
იქ არ არის პოინტერები PHP-ში.
იქ არ არის seg ხარვეზებით, რომ თქვენ შეგიძლიათ მარტივად გამოიწვიოს
იმავე გზით თქვენ შეიძლება C.
With C თქვენ სუპერ ახლოს აპარატურა.
PHP-და მსგავსი ენებზე თქვენ სახის მაღალ დონეზე, ასე ვთქვათ,
მრავალი თავდაცვითი შორის თქვენ და რაც რეალურად მიმდინარეობს
შიგნით მანქანა, და ეს მხოლოდ tradeoff.
>> ჩვენ შემოსული წერტილი მქონე ამ უფრო თანამედროვე, მაღალი დონის ენებზე
მოსწონს PHP გამო გაკვეთილების ენებზე, როგორიცაა PHP in C.
მაგრამ თუ თქვენ არ მესმის რა ხდება ქვეშ hood მთელი ამ ხნის
თქვენ რა თქმა უნდა, ვერ გააკეთებს უფლება დიზაინის გადაწყვეტილებები,
და, რა თქმა უნდა, როდესაც საქმე მუშაობს ადგილი როგორიცაა Facebook ან Google
ან რომელიმე ამ ადგილებში, რომ უფრო მეტად თამაშობენ დიდი მონაცემები ადგენს
მაშინაც კი თუ თქვენ უკან და ნუ premed და ვმუშაობთ რამდენიმე MD
ზოგიერთ დიდი მონაცემები მითითებული ჩართვის პაციენტები და ექიმები
და მოსწონს გამოყენებით უფლება იარაღები არის უკიდურესად მყარი
რადგან წინააღმდეგ შემთხვევაში, თქვენი ანალიზის ზოგიერთი მონაცემები კომპლექტი შესაძლოა წამში,
ან შეიძლება სიტყვასიტყვით მიიღოს საათი.
ეს არის მხოლოდ ერთი მაგალითია, რომ არ ჩაშალოს თქვენ რამდენად უფრო მეტი ძალისხმევა
ეს იყო C მაგრამ დაგეხმაროთ ვაფასებთ, რომ როდესაც თქვენ ჩვენგან განახორციელოს რაღაც C
ნამდვილად მესმის, ან თეორიულად, ნამდვილად მესმის
როგორ ყველაფერი ან უნდა სამუშაო, და თქვენ თითქმის სრული კონტროლი
მეტი რა ხდება ქვეშ Hood, და ამ უმაღლესი დონის ენებზე
თქვენ უნდა relinquish მეტი კონტროლი იმ ხალხს, რომლებიც გამოგონილი მათ
და ექვემდებარება მეტი მათი დიზაინი გადაწყვეტილებების ვიდრე შენია.
მაგრამ თუ ჩვენ, თავისთავად, რომ სპექტაკლი
დიდი ხნის არ არის ისეთი მნიშვნელოვანი, ინტერნეტში, რადგან ამ სხვა საკითხებთან
მხოლოდ ქსელური სიჩქარეზე უფრო პატარა ნელია ვიდრე CPU სიჩქარეზე მაინც,
ამიტომ ჩვენ შეგვიძლია სახის გაუშვას გამოიყენოთ ოდნავ ნელა ენა
თუ upsides ვართ შეუძლია განავითაროს რამ 10 ჯერ უფრო სწრაფად ან კიდევ უფრო.
>> ვნახოთ როგორ შეგვიძლია დავიწყოთ გამოყენებისას.
ნება მომეცით წასვლას ფოლდერი
შორის დღევანდელი მაგალითები მოუწოდა frosh.ims,
და ეს იყო ფაქტობრივად პირადად მოტივირებულია იმ ფაქტს, რომ ძალიან პირველი რაც
მე წერდა ვებ წლის წინ მიღების შემდეგ CS50 CS51 და
იყო ვებ Frosh IMS პროგრამა, freshman intramural სპორტული,
რომელიც იმ დროს ეს იყო საკმარისი წლის წინ, რომ იმ დროს
არ იყო ვებ პროგრამა, მიუხედავად იმისა, რომ იქ იყო Web,
და ნაცვლად იყო PROCTOR წელს Wigglesworth რის თუ უნდოდა
დასარეგისტრირებლად, ფრენბურთის ან ფეხბურთის ან რასაც თქვენ, რომ შეავსოთ ნაჭერი ქაღალდი.
თქვენ მაშინ ფეხით გასწვრივ ეზოში.
თქვენ მაშინ დააკაკუნონ მათ კარი და slide მათი კარი ან ხელი PROCTOR
ნაჭერი ქაღალდი თქვენი სახელი მასზე, თუ არა გსურთ გუნდის კაპიტანი,
რა სპორტი თქვენ გვინდოდა ჯანმრთელობის სფეროში გაგვეკეთებინა, და რა dorm იყავით შემოსული
ეს იყო ერთგვარი ძველი სკოლის გზას აკეთებს რამ, და ეს იყო პრემიერ
შესაძლებლობა ავტომატიზაცია ბევრი ამ პროცესში.
თქვენ უბრალოდ წასვლა ნახვა. თქვენ ტიპი რაღაც სისტემაში
თქვენ მიიღებთ ელ დადასტურება და ბუმი, თქვენ გაკეთდეს.
>> ეს იყო ძალიან პირველი რაც გავაკეთე, თუმცა ენის მოუწოდა Pearl,
მაგრამ შედარებით ადვილია PHP-ში, და ეს არის ერთგვარი წარმომადგენელი
პრობლემა თქვენ შეგიძლიათ დაიწყოთ გადაჭრის, როდესაც თქვენ შეგიძლიათ გამოხატოს თავის
პროგრამულად და არ უნდა დაეყრდნონ რამ, როგორიცაა Google საიტები
ან Excel ან ინსტრუმენტები, რომლებიც გადასცა თქვენ.
თქვენ ბიჭები ახლა აქვს უნარი გააკეთოს რამ მოსწონს ეს.
ეს არის სუპერ მახინჯი ვერსია ფორმით,
მაგრამ მოდით უბრალოდ ვიყენებთ მას დასაწყისში საუბარი, რომლის დროსაც ეს
უხეშად რა ფორმით ჰგავდა წლის წინ ჩვენთვის
რომელიც საშუალებას მისცემს ხალხს ინტერნეტში ხელი მოაწეროს მდე Frosh IMS.
ჩვენ სთხოვა სახელი, ჩამრთველი ამისთვის თუ არა მათ სურდათ იყოს კაპიტანი,
მამრობითი ან მდედრობითი, და შემდეგ რა dorm ისინი,
და მაშინ ისინი წარმოადგინოს ამ ფორმით.
მოდით პირველ სახეს ქვეშ hood at HTML, რომელიც წარმოადგენს ამ ვებგვერდზე.
ნება მომეცით წასვლას froshims0,
და როგორც განზე, ამისთვის pset 7 მე აღების თავისთავად
დირექტორიების და ფოლდერები, რომ მე აყენებს რამ სისტემაში
ჩვენ ფეხით თქვენ მეშვეობით რაში პერსონალის უნდა წავიდეს ელექტრო მოწყობილობების,
რაც თავდაცვის სამინისტროს ბრძანებები თქვენ უნდა აწარმოებს, ასე არ მიაქციოთ ყველა
სულელური დეტალები syncing in საწყისი მიიღოთ-go აქ.
>> ყველა უფლება აქ froshims0.php.
ნება მომეცით გადახვევა down, და რაც აინტერესებს აქ,
ეს არის PHP ფაილი, მაგრამ რა შიგნით ის, ნათლად?
ეს მთელი ბევრი HTML, და მართლაც, PHP-ის წარმოშობა
მართლაც, რომ ვებ centric ენაზე.
მომენტში წინ გამოვიყენეთ ის განსახორციელებლად ლუდი მაგალითად,
პირობები მაგალითად, მიესალმები მაგალითად, და ეს ჯარიმა.
თქვენ შეგიძლიათ გამოიყენოთ PHP როგორც სკრიპტირების ენა
სად Script მართლაც მხოლოდ ნომენკლატურის მიცემული სწრაფი და ბინძური პროგრამა
ან რაღაც, რომ თქვენ დაწეროთ scripted ან საერთოდ ინტერპრეტირებული ენა.
PHP არის სუპერ სასარგებლოა, რომ თქვენ, როგორ სწრაფად
შედარებით შეგვიძლია Whip up პროგრამების PHP.
მაგრამ ეს ნამდვილად განკუთვნილია გამოიყენება ვებ,
და განკუთვნილია ვებ იმ გაგებით, რომ შეამჩნია აქ ზედა ფაილი
მე დაიწყოს <? Php.
მერე არის რამოდენიმე უსარგებლო კომენტარი, მინიჭებული, მაგრამ მერე დახურვა PHP რეჟიმში.
მაგრამ შემდეგ მე ვარდნა შევიდა HTML რეჟიმში.
>> რა არის საინტერესო შესახებ PHP არის, მიუხედავად იმისა, ფაილის წელს იწურება. Php
ეს ზოგადად ნიშნავს, რომ ერთობლივად mingled HTML-თან ერთად,
ზოგიერთი PHP კოდი, ზოგიერთი HTML.
და ვნახავთ, საბოლოოდ, რომ ჩვენ შეგვიძლია დავიწყოთ აჯავრებენ იმ გარდა
და შეინახოს ჩვენი HTML ცალკე ჩვენი PHP საერთოდ,
მაგრამ წარმოშობა PHP მართლაც გადმოგცეთ ეს მოქნილობა,
რომ, თუ გნებავთ ზოგიერთი HTML უბრალოდ დაწერა, და რომ იქნება
Spit out იდენტურად ბრაუზერში.
მაგრამ თუ საჭირო ზოგიერთ პროგრამირების ტექნიკა,
ზოგიერთ პროგრამირების კოდი, ასევე შეგიძლიათ განათავსოთ შევიდა იმავე ზუსტი ფაილი, როგორც ჩვენ ვხედავთ მალე.
აი ჩემი HTML.
მაქვს ტიტული ამ Frosh IMS.
მაქვს სხეულის tag რომელმაც მიიღო გარკვეული CSS მასზე ცენტრში ყველაფერი ახლო,
და შემდეგ ქვევით აქ მაქვს ფორმა, რომელიც სავარაუდოდ იქნება წარმოდგენილი
ახალ ფაილი სახელად register0.php, ამიტომ ჩვენ დავინახავთ, რომ მომენტში.
ის გამოყენებით მეთოდი მოუწოდა ჩანაწერი, რომელიც ჩვენ დაბრუნდება ისევე.
მერე გარკვეული ფორმით საშუალებებით, ერთი წოდებული სახელი, რომლის ტიპის ტექსტი,
ერთი რომლის სახელიც კაპიტანი, რომლის ტიპის ჩამრთველი,
და ეს, ჩვენ არ მინახავს ეს ადრე, მაგრამ ეს იმას ზუსტად რა წერია.
თქვენ მიიღებთ ჩამრთველი ნაცვლად ტექსტი ყუთში.
Down აქ თქვენ გაქვთ რადიო ღილაკი, რომელიც არის ერთი იმ ცირკულარული ღილაკები
რომ თქვენ შეგიძლიათ ან აირჩიოს ამ ერთი ან რომ ერთ.
>> გაითვალისწინეთ ეს მიზანმიმართული რომ მივეცი ორივე რადიო ღილაკები სახელი გენდერული.
ეს არის, თუ როგორ უნდა გაიტანოთ ურთიერთშეთანხმების გარიყულობის რომლითაც უნდა მიჰყვეთ
ან ამ ერთი ან რომ ერთი და დაწკაპვით სხვა
ეს unchecks სხვა, ასე რომ თქვენ უნდა მივცეთ ამავე სახელწოდების
თუ გსურთ მათ ურთიერთგამომრიცხავ იგრძნობა.
და შემდეგ dorm, მე არ ვფიქრობ, რომ ჩვენ ვხედავთ ამ გაუკეთებია, მაგრამ აირჩიეთ მენიუ, ჩამოსაშლელი მენიუ.
ჭდის რომ არის არჩევა.
მაშინ მივცეთ ჩამოსაშლელი მენიუ სახელი,
და მაშინ თქვენ მთელი bunch of these options.
პირველი, მხოლოდ ესთეტიკის, არის ცარიელი სტრიქონს.
მე უბრალოდ მინდოდა drop ქვემოთ იყოს ცარიელი იყოს,
და შემდეგ იქ Apley, Canaday, Grays და სხვ.
და შეამჩნია dichotomy აქ.
პარამეტრი drop ქვემოთ აქვს ღირებულება,
მაგრამ მაშინ მას აქვს ადამიანის მეგობრული სახელწოდებით, რომელიც ამ მაგალითს
იდენტური, მაგრამ თუ ჩვენ ნამდვილად უნდოდა anal ჩვენ შეგვეძლო
ღირებულება ამ drop ქვემოთ მხოლოდ შემოკლებული ვერსია,
Grays, მაგრამ ჩვენ შეიძლება მართლაც ამბობენ Grays დარბაზში რომ ადამიანის რეალურად ხედავს,
მაგრამ ეს არ არის ყველა, რომ საინტერესო, ამიტომ მე მხოლოდ ინახება მარტივი და მათ იდენტურია.
მაშინ ქვემოთ ბოლოში ჩვენ გვაქვს submit ღილაკს
რაც ვნახეთ, მაგრამ შეამჩნია მე უბრალოდ მისცა სხვადასხვა სიტყვას.
იმის ნაცვლად, CS50 ძებნა მივეცი წარწერა "რეგისტრაცია".
>> საბოლოო ჯამში ამ ვებგვერდზე აქ, და კიდევ ერთხელ,
სად ეს მისაღებად წარდგენილი?
იგი იღებს წარმოდგენილი ზოგიერთი ფაილი, ღირებულების აქცია ატრიბუტი,
რაც register0.php.
ვნახოთ რა ხდება აქ.
ნება მომეცით წავიდეთ წინ და შეავსოთ ეს ფორმა, ვთქვათ დავით,
კაცი, Matthews, ხოლო შემდეგ მე ამბობენ რეგისტრაცია.
ნება მომეცით დააშორებს და დააჭირეთ რეგისტრაცია.
Okay, ასე ტიპის უსარგებლო, მაგრამ ვნახოთ რა რეალურად მიმდინარეობს.
გაითვალისწინეთ, რომ URL შეიცვალა იყოს register0.php.
რა არის საინტერესოა არყოფნის საწყისი URL, თუმცა, მიუხედავად იმისა, რომ ჩვენ მხოლოდ წარმოდგენილი ფორმით?
[Inaudible სტუდენტი საპასუხოდ]
Okay, ეს მხოლოდ Chrome მყოფი მომხმარებლის მეგობრული ამ დღეებში.
სწორედ რეალურად არსებობს. ისინი უბრალოდ დამალვა იგი გადარჩენა სივრცეში.
მაგრამ კარგი აზრის, კარგი აზრის.
მიმართ ჩაეგდო URL, თუმცა, რა აკლია? Yeah.
[სტუდენტური] მოთხოვნის სტრიქონი.
მოთხოვნის სტრიქონი, ისე გავიხსენოთ ჩვენი მარტივი Google ძებნა მაგალითები.
როგორც კი დააჭირეთ წარმოადგინოს ღილაკს URL
წამიყვანეს Google, მაგრამ შემდეგ იყო? q = კომპიუტერულ მეცნიერებათა ან რასაც მქონდა აკრეფილი შემოსული
ეს იმიტომ, რომ ჩვენ გამოყენებული GET მეთოდით ერთად ძებნა მაგალითად.
>> ამჯერად ჩვენ გამოყენებით რა მეთოდით ნაცვლად?
ჩანაწერი, ხოლო ერთი უშუალო განსხვავებებს
შორის კიდევ და პოსტი, რომ პოსტი არ იქნება მომხმარებლის შეყვანის წელს URL.
იგი მალავს მას. იგი კვლავ უგზავნის.
სინამდვილეში, რა ჩვენ ვხედავთ ბრაუზერის აქ, როგორც ჩვენ გამოვლენა in მომენტში
მიერ ეძებს register0, არის მე უბრალოდ ხედავს შინაარსი
საქართველოს მასივი, რომლებიც წარმოდგენილი ბრაუზერზე სერვერზე.
მაგრამ URL ამჯამად არ აქვს?, არ აქვს არც ერთი საკვანძო სიტყვები
ან ღირებულებების, და რატომ?
ისე, პოსტი გაძლევთ საშუალებას მაინც წარუდგინოს მონაცემების ფორმა სერვერზე,
მაგრამ ეს არ დააყენოს ის URL, ისე თუ რა სახის ინფორმაციის პოსტი
განსაკუთრებით შესაბამისი ალბათ როდესაც თქვენ გეკითხებით მომხმარებელს
აკრიფოთ შეყვანის to ფორმით?
რაღაც დაგავიწყდათ, რაღაც რა?
პლასტიკური ბარათებით ნომრები.
რამე რომ არის რბილად მგრძნობიარე თქვენ ალბათ არ მინდა დამთავრებული წელს URL
თუ მხოლოდ იმიტომ, რომ ეს ნიშნავს, რომ თქვენი roommate ან ოჯახის წევრს შეიძლება მხოლოდ Troll მეშვეობით
თქვენი ინტერნეტ ისტორია და შემდეგ სიტყვასიტყვით ნახოთ თქვენი პაროლები,
სიტყვასიტყვით ნახოთ თქვენი საკრედიტო ბარათის ნომრები, რადგან ბრაუზერები
მახსოვს ისტორია რასაც მისამართები თქვენ უკვე საათზე,
ასე რომ, თუ მხოლოდ იმიტომ, რომ იქნებოდა ცუდი იდეა.
გამოყენება პოსტი მალავს, რომ დეტალურად საწყისი მომხმარებელს.
>> ასევე, როგორ ატვირთე სურათი to Facebook?
ისე, მხოლოდ 2 მექანიზმების შეგიძლიათ ნამდვილად გამოიყენოს,
მიუხედავად იმისა, რომ არსებობს რამდენიმე სხვა უფრო arcane პირობა, არის კიდევ და პოსტი.
როგორ შესაძლოა ატვირთე სურათი მეშვეობით URL?
თქვენ შეგიძლიათ რეალურად გავაკეთოთ.
თქვენ შეუძლია JPEG ან Bitmap ან GIF და შეგიძლიათ წარმოადგენენ მას თექვსმეტობითი
ან რაღაც მოუწოდა ბაზა 64.
იმის ნაცვლად, რომ ბაზის 16 იყენებთ ბაზა 64, რომელიც არსებითად ჰგავს
ASCII სიმბოლოებს, და თქვენ შეგიძლიათ რეალურად ატვირთე სურათი მეშვეობით URL
შემდეგ კითხვის ნიშნის, მაგრამ არსებობს ზოგადად ზომა ფარგლებს გარეთ.
ყველაზე ბრაუზერები აიძულოს მისამართები უნდა იყოს არა უმეტეს 1,000 გმირები,
იქნებ 2,000 პერსონაჟთა მსგავსად, ასე რომ თქვენ ვერ აიტვირთება
10 მბ Facebook photo.
ამისათვის გამოვიყენოთ პოსტი ისევე, ისე ახლა მისაღებად აყენებს პარამეტრების URL,
რაც ლამაზი და სასარგებლო ხანდახან, მაგრამ არაფერი მგრძნობიარე ან დიდი
პოსტი გზაა გასავლელი.
რა არის register0 რეალურად აკეთებს აქ?
ისე, თუ გახსენით register0 გაფრთხილების, რომ ეს არის სუპერ მარტივი გვერდზე,
მაგრამ დემონსტრირებას იმისა, რომ შემიძლია სათანამშრომლოდ mingle, უკეთესი ან უარესი,
HTML PHP-ში.
ეს მთელი ფაილის, გარდა კომენტარები ზედა, არის HTML
გარდა ამ ბიჭს აქ.
>> ცნობა, შუა ჩემი PHP კოდი,
შუა ჩემი HTML, მაქვს სახის დროებით
შევიდა PHP რეჟიმში.
მე მოუწოდებდა სპეციალური ფუნქცია მოუწოდა ბეჭდვითი r.
ეს იმას ნიშნავს, ბეჭდვა რეკურსიული და რა არ არის ეს რეკურსიული ბეჭდავს
რასაც ცვლადი თქვენ გადასცეს იგი, მძიმით, გასასვლელში PHP რეჟიმში.
და წინასწარ tag გაძლევთ წინასწარ ფორმატირებული ტექსტი,
მონო სივრცეში ტექსტი ისე, რომ ყოველ სივრცეში თქვენ ნამდვილად ჩანს.
იგი არ ქრება. რა არის ჩანაწერი?
ისე, რა საინტერესო და მყარი შესახებ PHP
ის არის, რომ როდესაც თქვენ წარმოადგინოს ფორმის გამოყენებით GET, ან POST
არაფერი რომ წარმოდგენილი თქვენ მიერ ბრაუზერში
PHP თავად გათვლით, თუ რა იმ ძირითადი მნიშვნელობის წყვილის არიან,
მოღვაწეები გაქვთ თუ არა თანაბარი ნიშნები, ფიგურები გაქვთ თუ არა კითხვის ნიშნის.
ეს მხარე ყველა მძიმე სამუშაოს თქვენთვის, და მერე ხელში თქვენ ასოციაციურ მასივში
შემცველი ყველაფერი, რაც მომხმარებლის აკრეფილი შევიდა ფორმით.
ისე, რა სფეროებში არც ეს ფორმა აქვს?
>> მას ჰქონდა 4 სფეროებში.
ერთი ტექსტური ველი ეწოდება სახელი.
ერთი ჩამრთველი მოუწოდა კაპიტანი.
ერთი რადიო ღილაკს მოუწოდა ეძებთ,
და ერთი იყო ჩამოსაშლელი მენიუ მოუწოდა dorm,
ასე შეამჩნია როცა ბეჭდვა რეკურსიული
შინაარსი ამ სპეციალური ცვლადი.
ეს არის სპეციალური გლობალური ცვლადში სიტყვასიტყვით $ _POST, ყველა Caps.
ეს არის სპეციალური გლობალური ცვლადი რომ PHP უბრალოდ ქმნის თქვენთვის
და ხელში თქვენ, ასე რომ თქვენ შეგიძლიათ თქვათ ყველაფერი
რომ წარმოდგენილი მეშვეობით სახით მომხმარებლის.
და დარეკვით ბეჭდვითი R მასზე-თქვენ არ ამისათვის ნორმალურ განაცხადი.
ვაკეთებთ ამ დაინახოს შიგნით ამ ცვლადი,
და რაც შიგნით ის, ასევე, 4 გასაღებები,
4 http პარამეტრების, ასე ვთქვათ,
სახელი, კაპიტანი, სქესის, dorm და შემდეგ ღირებულებებს, რომ მომხმარებლის
აკრეფილი ერთი გამონაკლისი.
მე ტიპის D--V-I-D.
მე შევამოწმე ყუთი, თუმცა, კაცი, რომელიც აშკარად წარმოდგენილი ღირებულება
მხოლოდ მ უნდა იყოს ლაკონური.
>> როდესაც მე შერჩეული Matthews რომ ღირებულება, რომელიც კონკრეტულად შერჩეული,
და ეს ერთი არის პატარა სულელური, მაგრამ ეს კონვენცია.
როდესაც მე შევამოწმე ყუთი, ღირებულების შესახებ, "მე," მიიღო წარმოდგენილი ჩამრთველი.
მე რომ არ გადაამოწმა ეს, არ ღირებულება იქნებოდა გაგზავნილი განაწილებაზე.
ეს მხოლოდ გვაძლევს insights შევიდა რა შიგნით ამ სპეციალური გლობალური ცვლადი,
და ასე განსაკუთრებული, რომ ე.წ. სუპერ გლობალური ცვლადი.
იგი არსებობს ყველგან თქვენთვის განმავლობაში თქვენი კოდი ისე, რომ თქვენ შეგიძლიათ რეალურად ვებგვერდზე.
ეს არ არის, რომ მყარი, მოდით რეალურად გამოიყენონ სუპერ გლობალური
და ფაქტობრივად ცდილობენ რეგისტრაცია ვინმე.
In froshims1 მე ვაპირებ ერთი ცვლილება.
მე შეცვლით აქცია register1.php,
და მე ვაკეთებ ერთი სხვა რამ.
მე ვიყავი სახის გაჭირვებული მიერ ხარისხის ჩემი ვებგვერდზე არსებობს.
ეს საკმაოდ hideous, პატიოსნად, გამოდის,
რომ თქვენ შეგიძლიათ გამოიყენოთ ადვილად ინტერნეტში
სხვა ადამიანების JavaScript კოდი, სხვა ადამიანების CSS
რომ ისინი დაწერილი და ღია sourced და ხელმისაწვდომი როგორც ბიბლიოთეკა,
ასე ვთქვათ, და მაგალითად, აქ მე გამოყენებით თავისუფლად ხელმისაწვდომია ბიბლიოთეკა,
bunch of კოდი, რომელიც სხვისი დაწერა.
>> Twitter მოხდა დაწერა ამ კოდექსით და ეს მოუწოდა ჩატვირთვის ბიბლიოთეკა,
და ეს მხოლოდ bunch of CSS სტილების, bunch of. css ფაილი
რომ ვინმეს დაწერა და figured, თუ როგორ ყველაფერი ლამაზი და მშვენიერი
ისე, რომ ადამიანს მოსწონს us შეიძლება ინერვიულოთ პატარა ნაკლები შესახებ ესთეტიკის და ფოკუსირება ბევრად უფრო
on ლოგიკა და ფაქტობრივი პროგრამირების.
By აკავშირებს მას, რომ tag, რომელიც იგივე tag მე გახსოვდეთ ამისთვის styles3.css ადრე,
მე ახლა ხელმისაწვდომობის ფაილი სახელად bootstrap.min.css.
მინ მხოლოდ იმას ნიშნავს, ისინი minified და ისინი მიღებული ჩამოიშოროს ყველა თეთრი სივრცე და ა.შ.
მხოლოდ დარწმუნდით ისინი არ გაგზავნის ჩემთვის უფრო bytes ვიდრე რეალურად სჭირდება.
მაგრამ არსებობს მთელი bunch of CSS, ასე რომ, თუ მე ახლა გახსენით ვერსია 1 Frosh IMS
შეამჩნევთ, რომ ჩემი ფაილის ნამდვილად გალამაზებაში.
ახლა კი კვლავ მხოლოდ შავი და თეთრი, მაგრამ შეამჩნია, რომ მხოლოდ გამოყენებით მათი style sheet
და გამოყენებით გარკვეული თვისებებს იგი ჩემს ფორმით ეს არ საოცარი,
მაგრამ აუცილებლად სუფთა, ვიდრე ის, და პროექტორი არ აკეთებს ამას სამართლიანობა.
არსებობს პატარა ნაცრისფერი ხაზები გარშემო ღილაკების და გარშემო ველში სწორედ აქ,
მაგრამ აუცილებლად სუფთა ვიდრე აქამდე.
>> ახლა კი, სამართლიანობა, მე უნდა შევცვალო ჩემი markup bit.
ეს არის ვერსია 1, და შეამჩნია, რომ მე გამოიყენება რამდენიმე ახალი tags,
და პატიოსნად, არ მქონდა იდეა, თუ როგორ უნდა გავაკეთოთ ეს სანამ წავიკითხე დოკუმენტაცია
ამისთვის Twitter-ის ჩატვირთვის ბიბლიოთეკაში და მითხრეს, თუ გსურთ ისარგებლოთ ჩვენი ბიბლიოთეკა
გამოყენება fieldset ელემენტს შიგნით თქვენს ფორმას,
დააყენა სიტყვა გსურთ ნახოთ შემდეგ სფეროში შიგნით ეტიკეტების tag,
მაშინ მივცეთ თქვენი შეყვანის სახელი, ისევე, როგორც ადრე,
და მაშინ ჩამრთველი, არა მხოლოდ გაქვთ გადაიტანოთ იგი ეტიკეტების ელემენტს,
იყენებთ რაღაც მოუწოდა კლასის, ამიტომ ჩვენ არ გვინახავს ამ ადრე,
მაგრამ დაინახავთ ამ ერთ pset 7 ს შორტები.
კლასის CSS გაძლევთ რაღაც ძალიან ჰგავს ID,
მაგრამ ადრე, როდესაც ჩვენ გვქონდა პირადობის მოწმობა # სიმბოლო
რომ იყო ერთი და მხოლოდ ერთი ელემენტს.
რა არის ლამაზი შესახებ კლასის არის, რომ მრავალი ელემენტები შეიძლება ჰქონდეს იგივე კლასის
ან იგივე CSS პერსონალის მიმართა მას.
>> მაგრამ ერთხელ, უფრო იმ მოკლე, და დანარჩენი ეს მხოლოდ დააკოპირეთ და ჩასვით
მათი დოკუმენტაცია, სადაც მე დასძინა ეტიკეტების აქ და იქ.
და ბოლოს, რადგან მე მოიცავდა ლინკები tag ზედა,
ყველაფერი გამოიყურება გალამაზებაში ავტომატურად
უბრალოდ, რომელმაც აღინიშნა up ჩემი გვერდი ისე, რომ
Twitter მოსალოდნელია, და იქ ამდენი სხვადასხვა გზები
საქართველოს აკეთებს ეს და ეს მართლაც ძალიან შესაბამისი.
ამ დროისთვის სემესტრის, როგორც თქვენ იხილეთ pset 7 ს Spec,
Googling გარშემო, კითხულობს up on ბიბლიოთეკების გამოყენებით სხვა ადამიანების CSS
და JavaScript მოგვარებას დამხმარე პრობლემები
პრობლემის კომპლექტი თავად ნამდვილად წახალისებული და არის გზა
ვებ აგებულია ამ დღეებში, დგომით სხვა ადამიანების მხრებზე
ასე რომ შეგიძლიათ ნამდვილად ფოკუსირება ახალი და საინტერესო პრობლემები.
მაგრამ მოდით ახლა ფოკუსირება, კიდევ ერთხელ, ლოგიკა.
>> ეს იყო სწრაფი შემოვლითი on ესთეტიკის მხოლოდ გაჩვენოთ მიმართულებით, სადაც შეგიძლიათ გადასვლა.
მე ვაპირებ აღადგინოთ თავში uglier ერთი ახლა მხოლოდ იმიტომ
არ distractions ერთად Twitter პერსონალის, და ნება მომეცით წავიდეთ წინ და ქმნის
froshims2, რომელიც, კიდევ ერთხელ, მხოლოდ იმით განსხვავდება, აქცია, register2.php,
და მოდით შევხედოთ, თუ რა ეფექტი აქ.
ნება მომეცით წავიდეთ წინ და ტიპის დავით.
მე არ იქნება კაპიტანი ამ დროს.
მე ამბობენ კაცი, Matthews, რეესტრში.
Damn it. Okay, რომ ხრახნიანი up on ჩემი ნაწილი.
ლოდინის მიერ.
Register2, ხაზი 22, თუ ცარიელია ან-უკაცრავად.
მოდით განაახლეთ.
Okay, საფუძველზე წარდგენის ეს ფორმა, რა უბრალოდ მოხდა?
მე აკრეფილი დავით, შეამოწმეს კაცი, დააწკაპებთ Matthews, რეესტრში.
თქვენ დარეგისტრირებულ. (ისე, ნამდვილად არ.)
ეს არის აშკარად ნაბიჯი სცილდება მხოლოდ დაბეჭდვისას შინაარსი რამდენიმე ცვლადი,
მაგრამ რა არის ეს ფაილი რეალურად აკეთებს?
In register2.php
შეამჩნევთ, რომ მაქვს რამდენიმე ახალი კოდი.
შიგნით ჩემი სხეულის tag მაქვს არსებითად თუ სხვაგან მშენებლობა,
არამედ იმიტომ, რომ მე თანადამფუძნებელი mingling ამ ზოგიერთი HTML
მაქვს შესვლის და გასვლის PHP რეჟიმი უკან და მეოთხე, ამიტომ ვნახოთ რა მე აკეთებს.
>> პირველ ხაზზე აქ მე ვამბობ, თუ ეს საქმე
რომ პოსტი სუპერ გლობალური არის ცარიელი ამისთვის გასაღები სახელის,
ასე სხვა სიტყვებით, თუ მომხმარებელი არ მაძლევს მნიშვნელობა სახელი სახით,
მაშინ ცარიელი დაბრუნებას აპირებს რამეთუ ღირებულება არის ცარიელი.
ან შეამჩნევთ ვერტიკალური ბარები თუ ეძებთ არის ცარიელი
შიგნით ამ სპეციალური სუპერ გლობალური, რომელიც, კიდევ ერთხელ, წარმოადგენს შინაარსი ფორმით,
ან dorm არის ცარიელი, მაშინ მე ვაპირებ წავიდეთ წინ და დაწეროთ საათზე მომხმარებელი.
როგორ? კარგად შეამჩნევთ, მე ვაპირებ ვთქვა თქვენ უნდა უზრუნველყოს თქვენი სახელი, სქესი, და dorm.
მოდით რეალურად გამოიწვიოს, რომ შეცდომა იყო.
ნება მიბოძეთ დავუბრუნდე ჩემს ფორმით. ნება მომეცით განაახლეთ გარკვევა იყო.
და მე უბრალოდ აპირებს მათ დავით, და ისინი არ უნდა იცოდეს სად ვცხოვრობ.
რეგისტრაცია. როგორც ჩანს მე უნდა ვუთხრა, სადაც ვცხოვრობ.
თქვენ უნდა უზრუნველყოს თქვენი სახელი, სქესი და dorm. უკან დაბრუნება.
>> და მე ვერ click to დაბრუნდეს, რომ ფორმა, მაგრამ რატომ არის, რომ?
ისე, ამ შემთხვევაში სახელი არ იყო ცარიელი, მაგრამ სქესი იყო, და dorm იყო,
ასე რომ ეს მთელი გამოხატვის შეაფასეს ჭეშმარიტი, და მიუხედავად იმისა, რომ სინტაქსი არის პატარა ახალ,
ერთხელ, ჩვენ შევა PHP რეჟიმში, ნაცნობი თუ განაცხადი,
მაგრამ ახალი ნაწილი აქ არის მხოლოდ ამ ორი წერტილი, და მე ბრალია მიერ omitting ფრჩხილებში
შემთხვევით, მაგრამ შეამჩნია მსხვილი ნაწლავის, და ეს ნიშნავს,
მიუხედავად იმისა, რომ ჩვენ მოქმედი PHP რეჟიმში ყველაფერი
რომ შემდეგნაირად უნდა Spit out Verbatim ბრაუზერში
სანამ ხედავთ სხვას ბლოკი, როგორც ჩვენ აქ,
ამ შემთხვევაში თქვენ უნდა ნაცვლად Spit ამ გარეთ
სანამ ხედავთ endif, ამიტომ ზოგიერთი ოდნავ ახალი სინტაქსის
რომელიც საშუალებას აძლევს ჩემთვის გადართვა შორის HTML და PHP.
ჩვენ შეგვიძლია გაწმენდა ამ up საბოლოოდ, მაგრამ ახლა,
ეს სახის მყარი გზა შეცდომის შემოწმების ფორმა.
>> ახლა მე ვიტყვი, თქვენ ნამდვილად არ დარეგისტრირებულ რადგან აშკარად ჩვენ გავაკეთეთ არაფერია, თუ არა მონაცემები,
მოდით რეალურად ცდილობენ რაღაც cool.
In froshims3 ერთადერთი განსხვავება არის მე ვაპირებ წარუდგინოს register3,
ასე HTML არსებობს იგივე.
In register3 შეამჩნია ეს.
ეს ერთი არის სახის sexy.
ზედა მე გამოყენებით საჭიროებს განაცხადი, ასე რომ, ეს მოსწონს # მოიცავს.
ამჯერად ეს არ stdio.h ან არაფერი რომ.
ეს PHP ბიბლიოთეკაში და ამ ერთი ეწოდება PHPMailer.
როგორ მე ვიცი, რომ მოიცავს ზუსტად ამ ციტირებული სტრიქონი?
წავიკითხე ის დოკუმენტაცია, რომ როცა მითხრეს დააყენა ამ ზედა ფაილი
თუ გსურთ გამოიყენოთ სპეციალური ბიბლიოთეკა მოუწოდა PHPMailer რომ აკეთებს იმას, ნათქვამია მოხსენებაში.
ეს გაძლევთ საშუალებას გამოაგზავნოთ ელექტრონული ფოსტის მეშვეობით PHP.
ახლა მოდით გადახვევა ქვემოთ შემდგომი.
>> გაითვალისწინეთ რომ დაიწყოს მე PHP რეჟიმში ეს მთელი დრო,
ახლა შეამჩნია ქვემოთ აქ შემდეგ იმპორტიორი რომ ბიბლიოთეკა,
ასე ვთქვათ, მე ვაკეთებ რაღაც საღი აზრის ამოწმებს.
თუ ეს საქმე, რომ სახელი არ არის ცარიელი
და გენდერული არ არის ცარიელი-შეამჩნია ძახილის რაოდენობა-
და dorm არ არის ცარიელი, მაშინ მომხმარებელს უკვე ლოგიკურად შევსებული ფორმა, მინიმუმ საკმარისი.
არ მაინტერესებს, თუ ისინი კაპიტანი თუ არა. მე უბრალოდ უნდა თავისი სახელი, სქესი, და dorm.
თუ ისინი არ ივსება იმ out ასე რომ არც იმ ველი ცარიელი
ეს ოდნავ ახალი სინტაქსის.
PHP, როგორც განზე, არის ობიექტი ორიენტირებული პროგრამირების ენა
რაც ზოგიერთი თქვენ ბიჭები შეიძლება გავიხსენოთ საწყისი APCS ან მოსწონს.
ახლა, თუ უცნობ, მხოლოდ ვიცი, რომ გამოიყენოს ეს ბიბლიოთეკა
თქვენ უნდა დაწეროს ხაზი კოდი მოსწონს გამოყენებით ახალი სიტყვით,
სიტყვასიტყვით ახალი სიტყვით ე.წ. ახალი.
მაგრამ ამის მიღმა, ჩვენ გვაქვს რამდენიმე ნაცნობი სინტაქსით.
ეს arrow ოპერატორი, რომელიც მსგავსია იმისა, რაც ჩვენ გამოიყენება structs კონტექსტში პოინტერები.
დღეისათვის PHP ამჯამად არ გჭირდებათ,
მაგრამ ვიცი, რომ შიგნით გვერდის ცვლადის
არსებითად სახის მომცეთ სპეციალური ბიბლიოთეკა
რომ ვინმე წერს, და თუ მინდა წვდომისათვის კონკრეტული ფუნქციონალური
შიგნით რომ ბიბლიოთეკის მე, ისევე როგორც C, გამოიყენოთ arrow ოპერატორი,
მიუხედავად იმისა, რომ ეს არ არის რეალურად პოინტერები.
ეს ერთგვარი PHP საკუთარი ვერსია მისი.
ეს ნიშნავს წასვლას ბიბლიოთეკა და მოვუწოდებთ IsSMTP ფუნქცია.
SMTP, გაწვევას, ჩვენი Warriors of Net ეხება Email,
და რომ მხოლოდ იმას ნიშნავს, გამოიყენოთ ფოსტაზე ამ Frosh IMS რეგისტრაციას.
>> რა მასპინძელი არ მინდა?
ისე, ჰარვარდის, თუ Google გარშემო, აქვს ფოსტაზე მოუწოდა smtp.fas.harvard.edu.
თუ თქვენ სათამაშო გასწვრივ სახლში ან თქვენ ცხოვრობს Comcast ქსელის
ეს შესაძლოა იყოს რაღაც smtp.comcast.net.
ეს დამოკიდებულია, სადაც თქვენ ცხოვრობთ და ვინ არიან თქვენი ISP არის.
ამის შემდეგ მე ვაპირებ მითითებული ჩემი მხრიდან მისამართი თვითნებურად იყოს jharvard@cs50.net.
მე მაშინ აპირებს მითითებული მივმართო იყოს jharvard@cs50.net.
ერთადერთი გზა ვიცოდი, რომ ამ ფუნქციების დაიბარეს SetFrom და AddAddress
არის, კვლავ, წავიკითხე დოკუმენტაცია.
ეს არ არის ერთგვარი magically ცნობილია ყველა პროგრამისტები.
მერე მითითებული ექვემდებარება "რეგისტრაციის".
და ახლა ამ ხაზის ოდნავ მახინჯი, რადგან რას dot ოპერატორი ვგულისხმობ PHP?
რა?
Concatenate.
In C ეს ტკივილი კისრის to concatenate 2 strings ერთად.
თქვენ უნდა გაუმკლავდეთ malloc ან realloc ან ყველა რომ პერსონალი
უბრალოდ გახანგრძლივებას სიგრძეზე სიმებიანი.
PHP-ში, წელს JavaScript და სხვა ენებზე
შეგიძლიათ ჩვეულებრივ ამ ერთი ხასიათი.
ამ შემთხვევაში dot ნიშნავს მიიღოს ეს კონტექსტი აქ
და დამატება მას ეს კონტექსტი.
>> ოჰ, და სხვათა შორის, დამატება მას ეს კონტექსტი,
რაც ხდება უნდა იყოს ცვლადი შიგნით რომ სუპერ გლობალური.
მაშინ დამატება მას ახალი ხაზი, ასე რომ ყველა ეს წერტილი უბრალოდ ნიშნავს
შენარჩუნება მიღების უფრო დიდი და უფრო დიდი და უფრო დიდი ტექსტი,
და თქვენ არ უნდა იზრუნოს ყველა შესახებ malloc ან მსგავსად ენა მოსწონს,
და არსებობს სხვა გზა არსებობს, მაგრამ ეს არის ერთ ყველაზე სწრაფი
გზა იწვა იგი out.
რა არის ეს აკეთებს?
ეს შექმნის ელ ორგანო, რომელიც აპირებს ამბობენ სახელი: გუნდის: სქესი: Dorm:
ყველა ცალკეულ ხაზები, და მერე ბოლოს,
ერთი ხაზი კოდი, და მე ვაპირებ იგნორირება ამ დროისთვის.
თუ == ყალბი მხოლოდ იმას ნიშნავს, თუ რამე არ მოხდა ისე,
მაგრამ ჯადოსნური ხდება.
გვერდის გაგზავნას ნიშნავს გაგზავნას ამ ელ.
ვნახოთ რა net შედეგი.
ბოლოში ფაილი, შენიშნავს აპირებს ამბობენ თქვენ დარეგისტრირებულ ნამდვილად
თუ მივიღებ, რომ შორს.
თუ, თუმცა, მომხმარებლის ხრახნები up შეამჩნევთ, რომ ჩვენ დავიწყეთ ამ
თუ მდგომარეობა აქ, თუ ეს არ არის ცარიელი და არა ცარიელი
და არ იხსნება ჩვენ ფოსტა.
წინააღმდეგ შემთხვევაში, ჩვენ ვაპირებთ გაგზავნას ამ ხაზი კოდი,
რომელიც აპირებს აქვს ეფექტი, როგორც თქვენ იხილეთ pset 7, საქართველოს გადამისამართება მომხმარებლის
თავში, სადაც ისინი მოვიდნენ, froshims3.php.
>> თითების გადმოკვეთა, წინააღმდეგ შემთხვევაში, ეს იქნება ყველაზე გულდასაწყვეტი დემო დღეს.
Here We Go.
ნება მომეცით გახსენით ჩემი ელ შემოსულ jharvard წელს Gmail.
არარის ელ ახლავე. ყველა უფლება.
ახლა ნება მომეცით გახსენით froshims3, რომელიც მესამე და ბოლო მაგალითი ჩვენ შევხედოთ აქ.
Okay, აქ ჩვენ მივდივართ.
Nate, ის იქნება კაპიტანი, კაცი, საწყისი, ვთქვათ, Apley.
რეგისტრაცია. Okay, თქვენ დარეგისტრირებულ ნამდვილად.
არის თუ გადახვევა მეტი ჩემს ელ, OH, ჩემი ღმერთი.
მე ახლახან დინამიურად გაუგზავნა ელ ინტერნეტში.
>> მოდით დატოვების შესახებ, რომ შენიშვნა.
ვიდეო არის მოახლოებული ამისთვის ლექცია ჩვენ გაშვებული. თქვენ მომავალ კვირას.
[CS50.TV]