DAVID Malan: Mari kita meningkatkan program ini homepage sedikit lebih jauh oleh generalisasi fungsi-fungsi, renderHeader dan renderFooter, menjadi, cukup sederhana, membuat karena setelah semua, mereka hampir identik kecuali untuk nama mereka. Bagaimana melakukan ini? Nah di atas file ini hanya, di bawah mana kami membutuhkan helpers.php, mari kita sebut fungsi baru, membuat, yang pertama argumen, katakanlah, akan menjadi nama dari template, file yang dimaksudkan untuk dipasang di sana. Sementara itu, argumen kedua harus tetap array asosiatif, dalam hal ini huruf array yang berisi kunci untuk Judul yang nilainya sini CS50. Sekarang mari kita lihat helpers.php. Dalam helpers.php, kita sekarang, dari Tentu saja, hanya memiliki satu fungsi yang didefinisikan, render. membuat membutuhkan sekarang dua argumen, yang kami akan menelepon Template dan data, terakhir dari yang nilai default masih array kosong. Namun dalam versi ini render, pemberitahuan bahwa sekarang saya mendeklarasikan variabel lokal disebut jalur dan menetapkan nilai template, yang, misalnya, mungkin menjadi kutipan, tanda kutip, "header" dan menambahkan dengan php tali.. Dengan kata lain, mari kita asumsikan untuk saat ini bahwa jika template kita disebut header, maka template yang akan dilaksanakan dalam sebuah file yang bernama, cukup sederhana, header.php. Sementara itu, mari kita lakukan cek kewarasan cepat. Jika jalur yang ada, yang kita bisa cek dengan cara file bernama file_exists, maka mari kita mengekstrak array asosiatif yang disebut data sehingga kami memiliki satu atau lebih variabel lokal dalam lingkup, dan kemudian mari kita membutuhkan jalan itu. Sementara itu, helpers.php terlihat cukup hanya seperti ini, persis seperti sebelumnya. Tapi kalau sekarang kita melihat kembali index.php, melihat bahwa di bagian bawah yang berkas, kita sama dapat memanggil render, lewat di sebagai yang satunya footer argumen. Dalam hal ini, kita tidak perlu untuk lulus dalam array asosiatif karena footer Template, ingat, hanya ini. Tapi sekarang kita punya bisa dibilang bahkan desain bersih karena kita sudah dieliminasi beberapa sebaliknya kami kode berlebihan dan dikonsolidasikan ke dalam hanya satu fungsi, render.