Maison >Tutoriel CMS >PHPCMS >Est-ce que phpcms a un contrôleur ?
phpcms a un contrôleur. Le contrôleur phpcms est le fichier de classe du module, qui est stocké sous « phpcms/modules ». Chaque module a une méthode de dénomination indépendante. Le nom de la classe est au format « nom de fichier + nom .php » ; la bibliothèque de fonctions du système par défaut, peut être utilisée directement. Le nom de classe de la classe du contrôleur et le nom du fichier du contrôleur doivent être identiques.
L'environnement d'exploitation de ce tutoriel : système windows7, version phpcms v9, ordinateur DELL G3
phpcms dispose d'un contrôleur.
Qu'est-ce qu'un contrôleur dans phpcms ?
Le contrôleur phpcms est le fichier de classe du module, qui est stocké sous phpcms/modules. Chaque module a une méthode de dénomination indépendante. Format de nommage .php, la classe du contrôleur hérite par défaut de la bibliothèque de fonctions du système et peut être utilisée directement. Le nom de classe de la classe du contrôleur et le nom du fichier du contrôleur doivent être identiques.
Ajouter un nouveau contrôleur
Maintenant, nous allons créer un nouveau dossier de test sous phpcms/modules, créer un nouveau fichier nommé mytest.php dans le dossier de test et ajouter le code suivant dans le fichier :
defined('IN_PHPCMS') or exit('No permission resources.');class mytest { function __construct() { } public function init() { $myvar = '这是默认加载!'; echo $myvar; } public function mylist() { $myvar = '这是自定义list!'; echo $myvar; } }
Ensuite, nous peut saisir la méthode d'accès suivante dans le navigateur
http://domain name/index.php?m=test&c=mytest
http://域名/index.php?m=test&c=mytest
默认加载init()方法
http://域名/index.php?m=test&c=mytest&a=mylist
http: //Nom de domaine/index.php?m=test&c=mytest&a=mylist
La méthode mylist est chargée
Introduction au modèle
Modèle frontal
L'emplacement de le modèle frontal du site Web est dans phpcms/templates Sous le module /default/ nous ajoutons la méthode de chargement du modèle dans la méthode init() du fichier mytest.php du contrôleurinclude template('test', 'mytest', 'default');Créez un nouveau dossier de test et mytest.html fichier dans le répertoire phpcms/templates/default/.
Modèle backend
Le fichier de modèle d'arrière-plan se trouve dans le répertoire phpcms/modules/nom du module/templates
Contrôleur avec autorisations
Contrôleur backendCréez un nouveau mytest_admin sous phpcms/modules/admin php/. fichier, le code du fichier est le suivant :defined('IN_PHPCMS') or exit('No permission resources.'); pc_base::load_app_class('admin','admin',0); class mytest_admin extends admin{ function __construct() { } public function index(){ echo "后台控制器"; } }Adresse d'accès : http://domain name/index.php?m=admin&c=mytest_admin&a=index
phpcms custom model
Introduire le modèle sur la classepc_base::load_sys_class('model', '', 0);Ensuite, la classe étend le modèle hérité
Ajoutez le code suivant dans la méthode __construct :
$this->db_config = pc_base::load_config('database'); $this->db_setting = 'default'; parent::__construct();
function init(){ $sql = 'select * from v9_news '; $data = $this->get_array_by_sql($sql); var_dump($data); } public function sql_query($sql) { if (!empty($this->db_tablepre)) $sql = str_replace('phpcms_', $this->db_tablepre, $sql); return parent::query($sql); } public function fetch_next() { return $this->db->fetch_next(); } //通过SQL语句查询一条结果 public function get_one_by_sql($sql){ $this->sql_query($sql); $res = $this->fetch_next(); $this->free_result(); return $res; } //通过sql语句查询数组 public function get_array_by_sql($sql){ $this->sql_query($sql); $res = $this->fetch_array(); $this->free_result(); return $res; } //释放数据库结果资源,调用底层完成 public function free_result() { $this->db->free_result(); }
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!