Saya baru saja melihat ke kode wordpress dan menemukan definisi add_action ini:
function add_action($tag, $function_to_add, $priority = 10, $accepted_args = 1) {
return add_filter($tag, $function_to_add, $priority, $accepted_args);
}
Sekarang mengapa kita membuang satu siklus CPU hanya untuk memanggil fungsi lain yang bisa kita lakukan sendiri dan kemudian kita tidak perlu mengingat dua nama fungsi yang berbeda untuk hal yang sama.
Jawaban:
Tindakan melakukan banyak hal. Filter memodifikasi beberapa hal. Anda melakukan hal-hal dalam tindakan, sedangkan jika Anda menerapkan filter, Anda tidak mengharapkan peristiwa atau tindakan apa pun terjadi, selain modifikasi dari nilai yang Anda filter. mis. Tidak boleh mengirim email atau menyimpan nilai DB dalam filter, tetapi tidak apa-apa dalam tindakan. Mungkin ada saat-saat langka ketika Anda perlu melanggar konvensi ini, tetapi itu adalah yang berguna dan perlu.
Dengan mengganti semua
add_action
dando_action
menelepon dengan rekan filter mereka, Anda menghapus perbedaan dan memaksa pengetahuan tentang apakah nama seperti'the_content'
dll adalah tindakan atau filter dari dunia, dan ke dalam memori Anda, mendorong kesalahan.Jadi, alih-alih membuat kode Anda lebih sulit dibaca, sadarilah bahwa jika kode Anda lambat, itu bukan karena Anda tidak mencukur satu atau dua instruksi di sana-sini, itu adalah server Anda yang lambat, atau struktur algoritmik kode Anda dan sifat data yang ditangani. Anda akan mendapatkan jauh lebih banyak dari refactoring proses Anda, meningkatkan perangkat keras, atau mengubah paradigma Anda. Dalam skema besar, situs lambat kemungkinan besar lambat karena banyak atau memiliki kueri yang ditulis dengan buruk, mis. Kueri kiriman yang mengandalkan meta, atau
__not_in
ketik kueriUntuk memasukkannya ke dalam perspektif, ketika WordPress berjalan, PHP mengeksekusi jutaan instruksi. Bertukar tindakan untuk filter hampir tidak akan membuat penyok ke dalam seperseribu persen teratas.
http://fabien.potencier.org/article/8/print-vs-echo-which-one-is- lebih cepat
Jika Anda benar-benar ingin mencoba, lihat bagaimana pria itu menggunakan VLD dan menguji teori Anda sendiri.
sumber