>> 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.