phalcon框架使用指南,phalcon使用指南
phalcon框架使用指南,phalcon使用指南
初次认识phalcon是在刚学php的时候,最近终于有机会用上了.故此说说使用上的一些感受
个人是很喜欢phalcon这套框架的方式,使用依赖注入,让代码组织很灵活,耦合也很低.但是,也许是框架东西太多了,遇到几个坑. github上一年以上的issue也还没解决.不过有一定开发经验的话,还是可以自己修复的.被这几个坑浪费了不少时间....
第一个是view.
phalcon的view,可以分成两大部分,一是全局的layout,二是controller/action的部分, 让使用时更加方便,设置好layout后,只关注controller部分的view即可. 但是关于view的路径设置问题,要关注这几个参数
MainView(主layout文件路径+文件名,但不包括扩展名,扩展名是在注入视图引擎时的key键值),
LayoutsDir(layouts的目录路径),
Layout(主layout文件名,可根据需求,动态使用layouts目录下的某个文件充当mainView),
PartialsDir(使用partial函数时,查找模板文件,如partial('main/header') 则查找路径是"/你的partialsDir/main/header.volt" . ),
ViewsDir(设置controller/action对应的模板文件所在的目录.和partialDir类似,自动查找目录下的模板文件)
BasePath(视图的目录的基础目录,phalcon和根据所有设置的dir来组合路径,查找模板文件,坑就是这了)
我刚开始用这个view的时候,使用的是绝对路径,因为绝对路径配置和管理比较方便.
然后我就被坑了.浪费了一个下午的时间调试.
根据官方文档给出的例子反复测试,发现这个view组件只能使用相对路径设置路径,BasePath不用设置.
一气之下就去翻phalcon的源码了.开发语言是Zephir,phalcon团队自己开发的语言.
语言语法比较简单,容易懂.然后看到了这句.
..]
看起来像是没有判断是相对路径还是绝对路径,直接组合起来了而已的,猜测是这里引发了问题.
并且是直接按顺序解析action , layout , main layout这些模板文件.
于是想验证一下.所以我写了几个调试文件,打算调试一下.
翻查phalcon源码过程省略1000字...找到必然会调用,并有路径处理的几个主要方法,继承View相关的几个class
这里也强调下,很多人喜欢用echo,一般情况是没问题, 但最好还是用文件记录吧,因为echo局限性其实挺大的, 你不知道echo buff什么时候打开,什么时候关闭..使用文件来记录log最保险了.
我测试的代码,使用多模块的方式.
BaseView文件,继承phalcon的view,并且打开这个方法的报错信息
BaseVolt文件,继承模板引擎volt
view注入代码,和目录结构如图
log记录如下
页面输出如下:
跟想像的一样,使用绝对路径时,无论如何,phalcon都是直接拼接以上设置的路径,
当开发者想动态使用controller/action的view,但layouts主目录又在上层目录时,就会出问题.
phalcon找的main layout路径是Phalcon\Mvc\View\Exception: View '/Users/Hin/work/phalcon_mode/app/modules/admin/views/layouts/main' was not found in the views directory
而我要的是/Users/Hin/work/phalcon_mode/app/views/layouts/main
然后找不到路径,main layout模板文件就不起作用了..........
<code>所以,真的就只是直接组合三个路径而已..所以,在设置路径的时候,就看自己的取舍了.</code>
phalcon view源码里三个变量中,basePath,viewDir(关键就是作者对viewDir这个变量理解有误,导致的bug) 看成是基础的路径. viewPath是依次执行_enginrender时的action view,layout view ,main view的路径.
理解了这个就可以自己慢慢设置好了路径了.....
解决办法有三个. 一 是自己写个View继承phalcon的View,处理路径. 思路是除了action的定位外,其他定位将viewDir变为空. 二 是修改phalcon源码,再自己编译一遍(在_enginRender外部处理好路径定位,去除_enginRender和路径定位的耦合) 三 是,不管了,直接使用相对路径(不设置basepath,viewsDir因为要动态定位action view,使用绝对路径, layoutsDir partialsDir使用相对路径) github上是有人发过这个bug的issue,可是作者没理会......
------------------------------华丽分割线------------------------------------
第二是model
还有个坑,是关于phalcon的model.一样是发了issue,作者没管.
根据文档model是提供了setter 链接描述 方法的,可实际上,setter却不起作用...
<code>然后像view一样,自己修复好...</code>
个人认为setter getter是非常好用的功能,但有些人却觉得没用,见仁见智啦. 我们的开发模式是model和controller 由不同的人开发,有了setter getter,数据调用者只管拿数据就可以了, model数据出问题,在model中修改即可,controller不需要改动.工作模式上耦合可以降低很多.
不过用这个框架的开发的项目夭折了,再深入点的坑也遇不到了.没有意外的话,短期内也不会用了.
最近心情比较糟糕.写得比较随便.当个记录好了.......
最后直接附上 github 源码,多模块模式开发用这样的目录结构也是不错的,希望能帮到别人

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

De nombreux amis novices ne savent toujours pas comment utiliser Aisi Assistant, c'est pourquoi l'éditeur ci-dessous a proposé un didacticiel sur la façon d'utiliser Aisi Assistant. Les amis qui en ont besoin peuvent y jeter un œil rapidement. 1. Interface de fonctionnement, vérifiez si les composants nécessaires sont installés (comme indiqué dans la figure ci-dessous) ; 2. Fenêtre de mon appareil, lisez les informations de description pertinentes (comme indiqué dans la figure ci-dessous) ; 3. Si le lien ne peut pas être établi, selon ; aux instructions pour les opérations associées (comme indiqué dans la figure ci-dessous) ; 4. Utilisez la fenêtre de jeu pour compléter rapidement l'expérience des jeux populaires associés (comme indiqué dans la figure ci-dessous) ; 5. Téléchargez et sélectionnez les différentes sonneries que vous devez utiliser ; (comme le montre la figure ci-dessous) ; 6. Téléchargez rapidement divers fonds d'écran haute définition (comme le montre la figure ci-dessous) ; 7. Prend en charge la fonction de root et de jailbreak (comme le montre la figure ci-dessous) ; au-dessus de

exescope est un puissant outil d'édition de ressources de programme qui peut facilement convertir la version anglaise du logiciel en version chinoise. Alors, comment utiliser l'exescope nouvellement téléchargé ? Si vous êtes également un utilisateur novice, venez jeter un œil au tutoriel détaillé ci-dessous. Didacticiel d'utilisation d'Exescope 1. Ouvrez eXeScope, cliquez sur le fichier dans le coin supérieur gauche, cliquez sur [Ouvrir] dans les options contextuelles et sélectionnez le fichier que vous souhaitez ouvrir. 2. Après avoir ouvert le logiciel, vous pouvez voir de nombreux contrôles. 3. Vous pouvez modifier directement la taille, la position et le contenu de chaque contrôle en saisissant des données, ou vous pouvez directement cliquer sur l'éditeur de boîte de dialogue ci-dessus et faire glisser les contrôles directement sur l'interface du programme. Après avoir ajusté les commandes, cliquez sur [Enregistrer].

Little Black Box est une plateforme de jeu très simple à utiliser, alors comment utiliser ce logiciel spécifiquement ? Les utilisateurs rencontreront de nombreux problèmes lors de l'utilisation de ce logiciel et disposeront de différentes solutions. Ce tutoriel récapitulatif de l'utilisation multifonctionnelle de la petite boîte noire vous expliquera comment l'utiliser. Ce qui suit est une introduction détaillée, alors jetez-y un oeil ! Tutoriel sur l'utilisation de Little Black Box [2024-01-31] Comment utiliser la clé CD achetée sur Little Black Box [2024-01-31] Comment stocker les jeux achetés sur Little Black Box dans Steam [2024-01- 31] La clé CD achetée chez Little Black Box peut être retournée Paiement ?

De nombreux amis ne savent pas comment utiliser Enterprise WeChat, c'est pourquoi l'éditeur ci-dessous partagera le didacticiel d'utilisation d'Enterprise WeChat. Je pense que cela sera utile à tout le monde. Étape 1 : Cliquez sur l'icône « Enterprise WeChat » pour accéder à Enterprise WeChat. Dans la section des messages, nous pouvons rejoindre la discussion de groupe pour discuter avec des collègues (comme indiqué sur l'image). Étape 2 : Sur l'interface principale d'Enterprise WeChat, cliquez sur « Carnet de contacts » (comme indiqué sur l'image). Étape 3 : Entrez dans la section du carnet d'adresses, où nous pouvons voir nos contacts (comme indiqué sur l'image). Étape 4 : Sur l'interface principale d'Enterprise WeChat, cliquez sur « Workbench » (comme indiqué sur l'image). Étape 5 : Entrez dans la section établi, où nous pouvons effectuer les petits travaux quotidiens de l'entreprise (comme indiqué sur l'image). Étape 6 : Sur l'interface principale d'Enterprise WeChat, cliquez sur « Moi » (comme indiqué sur l'image

Récemment, de nombreux amis ont demandé à l'éditeur comment utiliser Thunder Magnet Links. Ensuite, apprenons le didacticiel sur l'utilisation de Thunder Magnet Links. J'espère que cela pourra aider tout le monde. Étape 1 : Tout d’abord, nous ouvrons le Thunder installé et cliquons sur le bouton Nouveau, comme indiqué sur l’image. Étape 2 : Recherchez ensuite un lien magnétique sur Internet, copiez-le et collez-le à l'emplacement indiqué dans l'image ci-dessous, puis cliquez sur OK, comme indiqué dans l'image. Étape 3 : Le répertoire de téléchargement détaillé de la ressource apparaît. Nous vérifions la ressource à télécharger, sélectionnons le répertoire de stockage et cliquons sur Télécharger maintenant, comme indiqué sur la figure. Étape 4 : Enfin, nous attendons que les ressources soient téléchargées, comme le montre l'image. Ce qui précède est tout le contenu sur la façon d'utiliser les liens magnétiques Thunder présenté par l'éditeur. J'espère que cela pourra être utile à tout le monde.

Récemment, de nombreux amis m'ont demandé comment utiliser le simulateur ons. Ensuite, apprenons le didacticiel sur la façon d'utiliser le simulateur ons. J'espère que cela pourra aider tout le monde. Étape 1 : Téléchargez d’abord l’outil onscripter comme indiqué ci-dessous. Étape 2 : Téléchargez ensuite le jeu d’émulateur Ons. Étape 3 : Faites ensuite glisser le fichier du simulateur onscripter.exe que vous venez de télécharger directement dans le répertoire du jeu et double-cliquez sur onscripter.exe pour l'ouvrir. Étape 4 : Lancez simplement le jeu directement. Ce qui précède est tout le contenu sur la façon d'utiliser le simulateur ons proposé par l'éditeur. J'espère qu'il pourra être utile à tout le monde.

De nos jours, de nombreux amis utilisent le logiciel de télécommande Tournesol, mais de nombreux amis ne savent toujours pas comment utiliser le logiciel de télécommande Tournesol. Aujourd'hui, je vais vous présenter en détail tous les tutoriels sur l'utilisation du logiciel de télécommande Tournesol. j'espère que cela pourra aider tout le monde. Étape 1 : Ouvrez d’abord le logiciel de télécommande Tournesol et assurez-vous que le logiciel se connecte correctement au serveur (comme indiqué sur l’image). Étape 2 : entrez ensuite le code d'identification du tournesol à distance (comme indiqué sur l'image). Étape 3 : Vous pouvez saisir directement le code de vérification à distance pour une connexion à distance sans surveillance, ou cliquer pour confirmer la connexion via le terminal distant sans code de vérification (comme indiqué sur la figure). Étape 4 : Cliquez ensuite sur « Connexion à distance » et le contrôle du bureau commencera à se connecter au bureau distant (comme indiqué sur l'image). Étape 5 : Une fois la connexion établie, le système entre automatiquement dans l'environnement de bureau de l'ordinateur distant.

Shuqi Novel est un outil avec de riches ressources de livres qui peuvent être lues gratuitement. La plupart des utilisateurs ne savent pas comment utiliser les fonctions et les outils de Shuqi Novel. Les didacticiels les plus détaillés sur la façon d'utiliser le logiciel seront compilés ci-dessous. L'éditeur apportera aux utilisateurs un résumé des didacticiels multifonctionnels pour Shuqi Novel. Les utilisateurs intéressés peuvent venir y jeter un œil ! Tutoriel d'utilisation de Shuqi Novel [2024-03-13] Où sont les signets de Shuqi Novel [2024-03-13] Comment désactiver le renouvellement automatique de l'adhésion à Shuqi Novel [2024-03-13] Où puis-je obtenir le VIP de Shuqi Roman [2024 -03-13] Où lire l'identifiant du roman de Shuqi [2024-03-13] Où saisir le code d'invitation du roman de Shuqi [2024-03-13] Comment écouter le roman de Shuqi
