დავით Malan: მოდით გაუმჯობესება კურსი მთავარი გვერდი ცოტა შემდგომი generalizing იმ ფუნქციებს, renderHeader და renderFooter, შევიდა, უბრალოდ, გაწევა, რადგან ყოველივე ამის შემდეგ, ისინი თითქმის იდენტურია გარდა მათი სახელები. როგორ გავაკეთოთ ეს? ასევე atop ამ ფაილის უბრალოდ, ქვემოთ, სადაც ჩვენ ვითხოვთ helpers.php, მოდით მოვუწოდებთ ახალი ფუნქცია, გაწევა, რომლის პირველი არგუმენტი, ასე ვთქვათ, უნდა იყოს სახელი ერთი თარგი, ფაილი, რომელიც ნიშნავს უნდა plugged არსებობს. ამავდროულად, მეორე არგუმენტი უნდა რჩება ასოციაციურ მასივში, ამ საქმის მასივი შეიცავს გასაღები სათაური, რომლის ღირებულება არის აქ CS50. მოდით ახლა შევხედოთ helpers.php. In helpers.php, ჩვენ ახლა, რა თქმა უნდა, მხოლოდ ერთი ფუნქცია განისაზღვრება, გამოიტანოს. გაწევა ხდება ახლა ორი არგუმენტი, რომელიც ჩვენ მოვუწოდებთ შაბლონი და მონაცემები, ეს უკანასკნელი, რომლის ნაგულისხმებია ჯერ კიდევ ცარიელი მასივი. მაგრამ ამ მობილური გაწევა, ცნობა რომ მე ახლა განაცხადოს ადგილობრივი ცვლადი მოუწოდა გზა და მივანიჭოთ მას ღირებულება თარგი, რომელიც, მაგალითად, შეიძლება იყოს ციტირებით unquote, "header" და დამატება რომ სიმებიანი. php. სხვა სიტყვებით რომ ვთქვათ, მოდით ვივარაუდოთ, ახლა რომ თუ ჩვენი თარგი ჰქვია თავით, მაშინ ეს თარგი განხორციელდება ფაილი სახელად, უბრალოდ, header.php. ამასობაში, მოდით სწრაფი საღი აზრის ქვითარი. თუ ეს გზა არ არსებობს, რომელიც ჩვენ შეგვიძლია შეამოწმეთ გზით ფაილი სახელად file_exists, მაშინ მოდით ამონაწერი ასოციაციურ მასივში მოუწოდა მონაცემები, ასე რომ ჩვენ, ერთი ან მეტი ადგილობრივი ცვლადები ფარგლებში, და მერე მოდით მოითხოვს, რომ გზა. იმავდროულად, helpers.php გამოიყურება საკმაოდ უბრალოდ მოსწონს, ზუსტად ისე, როგორც ადრე. მაგრამ თუ ჩვენ ახლა ვიხსენებთ index.php, შეამჩნევთ, რომ ბოლოში რომ ფაილი, ჩვენ შეგვიძლია ასევე მოვუწოდებთ გაწევა, გადადის, როგორც მისი ერთადერთი არგუმენტი ძირი. ამ შემთხვევაში, ჩვენ არ უნდა გაიაროს ასოციაციურ მასივში რადგან footer template, გაწვევას, მხოლოდ ეს. მაგრამ ახლა ჩვენ, ალბათ კი სუფთა დიზაინი, რადგან ჩვენ აღმოფხვრილი ზოგიერთი ჩვენი სხვაგვარად გადაჭარბებული კოდი და გაერთიანდა მხოლოდ ერთი ფუნქცია, გამოიტანოს.