Rumah > Soal Jawab > teks badan
Selepas menimbulkan moodle melalui "luaran"
require_once('../config.php');
Dalam senario SSO dalam aplikasi (iaitu MRBS), apabila mencari sama ada pengguna yang sedang log masuk mempunyai keupayaan tertentu untuk blok tertentu, saya mendapat ralat: Exception - 类“MRBSSessioncontext_block”未找到
:
if (has_capability('moodle/block:edit', context_block::instance($blockid)){}
Saya rasa ini kerana ruang nama ditetapkan kepada namespace MRBSSession;
Bagaimana cara memetik context_block::instance()
dengan betul?
Fungsi Moodle nampaknya berfungsi (cth. require_login(), has_capability). Terima kasih
P粉6429205222024-03-23 09:09:32
Anda perlu menulis:
if (has_capability('moodle/block:edit', \context_block::instance($blockid)) {}
Isytihar context_block dalam ruang nama peringkat atas menggunakan aksara "".
Atau anda perlu meletakkan perkara berikut di bahagian atas fail:
use \context_block;
Saya secara peribadi lebih suka pilihan pertama, tetapi itu biasanya soal keutamaan peribadi.