Rumah >hujung hadapan web >tutorial js >Penyelesaian kepada masalah yang templat Thinkphp tidak menghuraikan dan mengeluarkan secara langsung kerana kemahiran is_javascript
Contoh dalam artikel ini menerangkan penyelesaian kepada masalah bahawa templat Thinkphp tidak dihuraikan dan secara langsung mengeluarkannya sebagaimana adanya. Kongsikan dengan semua orang untuk rujukan anda. Butirannya adalah seperti berikut:
1. Soalan:
Saya sedang mempelajari templat thinkphp baru-baru ini, tetapi saya mendapati bahawa halaman templat itu keluar seperti sedia ada Selepas beberapa pencarian yang sukar, saya akhirnya menemui penyelesaiannya.
2. Penyelesaian:
Ramai orang telah menghadapi masalah yang sama __ROOT__, __PUBLIC__ dan __APP__ yang terkandung dalam rentetan yang diberikan kepada pembolehubah digantikan dengan laluan sebenar apabila dipaparkan dalam templat. Saya menemui masalah ini semasa menulis sistem pengurusan fail Timi.
Selepas membaca kod sumber daripada fail dan mengeluarkannya ke halaman, saya mendapati bahawa selagi ia adalah watak laluan TP, ia telah digantikan dengan laluan sebenar.
Contohnya:
Saya pada asalnya merancang untuk menukar kod sumber untuk melaksanakan penyelesaian berikut untuk kasut kanak-kanak:
Bos, adakah ini penyelesaian sementara atau penyelesaian muktamad?
Tetapi saya rasa tidak salah untuk menambah pertimbangan dalam kaedah assign(),
Jika ia $this->assign('','',false), kandungan tidak akan diganti dan akan dikeluarkan seperti sedia ada.
Hasilnya, selepas membaca kod sumber ini, saya menyedari bahawa ia tidak semudah itu dan perubahannya terlalu besar.
Balasan terakhir daripada kanak-kanak lain menunjukkan penyelesaian terakhir:
"Anda boleh merujuk kandungan di sini: http://www.jb51.net/article/54217.htm(penggantian templat)
Dengan peraturan penggantian templat, semua rentetan __PUBLIC__ pada halaman akan digantikan Jika kita benar-benar perlu mengeluarkan rentetan __PUBLIC__ pada templat, kita boleh menambah peraturan penggantian, contohnya:
.
Selepas menambah peraturan penggantian dengan cara ini, jika kita ingin mengeluarkan rentetan __PUBLIC__, kita hanya perlu menambah --PUBLIC-- dalam templat Kaedah keluaran rentetan gantian yang lain adalah serupa.
Jadi, rancangan itu dikeluarkan:
Konfigurasikan dalam fail konfigurasi Tp config.php
Kemudian konfigurasi TMPL_PARSE_STRING hanya diganti apabila templat dihuraikan, seperti yang ditunjukkan dalam rajah di bawah:
Sejak itu, masalah ini telah "sementara" dan "sempurna" diselesaikan.
Saya harap artikel ini akan membantu pengaturcaraan rangka kerja ThinkPHP semua orang.