Saya hanya menghabiskan banyak waktu mencari elemen dalam array render. Saya biasanya menggunakan dpm()
untuk mencetak array, dan kemudian memperluas opsi sampai saya menemukan apa yang saya cari.
Pada array yang lebih besar itu tidak praktis. Ketika saya menggunakan print_r()
, saya bisa melakukan pencarian teks, tetapi kemudian sulit untuk melihat struktur array dan menemukan path ke elemen.
Metode apa lagi yang bisa Anda sarankan?
dpm()
, saya pikir dia sedang mencari fungsi untuk menemukan sub-elemen dalam array render dengan nama / kunci yang diberikan$elements = find_elements_by_key($render_array, 'element_name');
mengembalikan array semua elemen dalam array render dengan kunci yang cocok?Jawaban:
Ada modul ekstensi untuk Devel : Cari Krumo . Menggunakan Javascript untuk menemukan teks dalam pesan Krumo / dpm dan membuka array di tempat-tempat itu.
Terlihat seperti ini:
Memperbarui
Setelah 22 April 2012, Anda harus menggunakan
sdpm()
fungsi untuk melihat kotak pencarian.sumber
Salah satu masalah besar dengan render array adalah seringnya ada banyak salinan read-only dari informasi yang Anda cari. Jika Anda ingin benar-benar mengubah hasil render, Anda harus menemukan yang tepat. Saya biasanya menggunakan dpm (), dan kemudian melihat sumber halaman dan mencari melalui output di sana, membalik-balik antara dua layar sampai saya menemukan apa yang saya butuhkan.
Jika Anda ingin membuang isi array render untuk jalur yang diberikan ke terminal (misalnya untuk meneruskannya melalui grep), Anda bisa melakukan sesuatu seperti ini:
Anda juga bisa hanya 'melihat sumber halaman' di browser Anda dan menggunakan clipboard, tentu saja, tetapi di atas mungkin merupakan awal dari perintah Drush untuk melihat array render.
Pembaruan: Saya menemukan artikel yang sangat bagus tentang hal ini: The Scary Render Array - mungkin pengobatan terbaik dari array render yang telah saya lihat sejauh ini. Saya seharusnya juga menyebutkan modul devel_themer di muka; itu berfungsi dengan baik pada "memperbesar" pada bagian array render yang Anda minati.
sumber