Inhaltsverzeichnis
phalcon框架使用指南,phalcon使用指南
Heim php教程 php手册 phalcon框架使用指南,phalcon使用指南

phalcon框架使用指南,phalcon使用指南

Jun 13, 2016 am 08:45 AM
cookie phalcon 使用教程

phalcon框架使用指南,phalcon使用指南

初次认识phalcon是在刚学php的时候,最近终于有机会用上了.故此说说使用上的一些感受

个人是很喜欢phalcon这套框架的方式,使用依赖注入,让代码组织很灵活,耦合也很低.但是,也许是框架东西太多了,遇到几个坑. github上一年以上的issue也还没解决.不过有一定开发经验的话,还是可以自己修复的.被这几个坑浪费了不少时间....

第一个是view.

  phalcon的view,可以分成两大部分,一是全局的layout,二是controller/action的部分,
  让使用时更加方便,设置好layout后,只关注controller部分的view即可.
  但是关于view的路径设置问题,要关注这几个参数
Nach dem Login kopieren

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最保险了.
Nach dem Login kopieren

我测试的代码,使用多模块的方式.

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>
Nach dem Login kopieren

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,可是作者没理会......
Nach dem Login kopieren

------------------------------华丽分割线------------------------------------

第二是model

还有个坑,是关于phalcon的model.一样是发了issue,作者没管.
根据文档model是提供了setter 链接描述 方法的,可实际上,setter却不起作用...

<code>然后像view一样,自己修复好...</code>
Nach dem Login kopieren

个人认为setter getter是非常好用的功能,但有些人却觉得没用,见仁见智啦.
我们的开发模式是model和controller 由不同的人开发,有了setter getter,数据调用者只管拿数据就可以了,
model数据出问题,在model中修改即可,controller不需要改动.工作模式上耦合可以降低很多.
Nach dem Login kopieren

不过用这个框架的开发的项目夭折了,再深入点的坑也遇不到了.没有意外的话,短期内也不会用了.
最近心情比较糟糕.写得比较随便.当个记录好了.......

最后直接附上 github 源码,多模块模式开发用这样的目录结构也是不错的,希望能帮到别人

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
Will R.E.P.O. Crossplay haben?
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So verwenden Sie Aisi Assistant – Tutorial zur Verwendung von Aisi Assistant So verwenden Sie Aisi Assistant – Tutorial zur Verwendung von Aisi Assistant Mar 06, 2024 pm 12:10 PM

Viele unerfahrene Freunde wissen immer noch nicht, wie man Aisi Assistant verwendet, daher hat der Herausgeber unten ein Tutorial zur Verwendung von Aisi Assistant zusammengestellt. Freunde, die es benötigen, können schnell einen Blick darauf werfen. 1. Bedienoberfläche, prüfen Sie, ob die erforderlichen Komponenten installiert sind (wie in der Abbildung unten gezeigt); 2. Mein Gerätefenster, lesen Sie die relevanten Beschreibungsinformationen (wie in der Abbildung unten gezeigt); zu den Anweisungen für verwandte Vorgänge (wie in der Abbildung unten gezeigt); 4. Verwenden Sie das Spielfenster, um das Erlebnis verwandter beliebter Spiele schnell abzuschließen (wie in der Abbildung unten gezeigt). 5. Laden Sie die verschiedenen Klingeltöne herunter, die Sie verwenden möchten (wie in der Abbildung unten gezeigt); 6. Laden Sie schnell verschiedene hochauflösende Hintergrundbilder herunter (wie in der Abbildung unten gezeigt). 7. Unterstützen Sie die Root- und Jailbreak-Funktion (wie in der Abbildung unten gezeigt). über

Wie verwende ich Exescope? Detailliertes Tutorial zur Verwendung Wie verwende ich Exescope? Detailliertes Tutorial zur Verwendung Mar 13, 2024 pm 10:40 PM

exescope ist ein leistungsstarkes Tool zur Bearbeitung von Programmressourcen, mit dem die englische Version der Software problemlos in die chinesische Version konvertiert werden kann. Wie verwende ich also das neu heruntergeladene exescope? Wenn Sie auch ein Anfänger sind, schauen Sie sich das ausführliche Tutorial unten an. Tutorial zur Verwendung von Exescope 1. Öffnen Sie eXeScope, klicken Sie auf die Datei in der oberen linken Ecke, klicken Sie in den Popup-Optionen auf [Öffnen] und wählen Sie die Datei aus, die Sie öffnen möchten. 2. Nach dem Öffnen der Software sehen Sie viele Steuerelemente. 3. Sie können die Größe, Position und den Inhalt jedes Steuerelements direkt ändern, indem Sie Daten eingeben, oder Sie können direkt auf den Dialogfeld-Editor oben klicken und die Steuerelemente direkt auf die Programmoberfläche ziehen. Klicken Sie nach dem Anpassen der Steuerelemente auf [Speichern].

Kleines Tutorial zur Black-Box-Nutzung Kleines Tutorial zur Black-Box-Nutzung Feb 23, 2024 pm 05:10 PM

Little Black Box ist eine sehr einfach zu bedienende Spieleplattform. Wie nutzt man diese Software konkret? Benutzer werden bei der Verwendung dieser Software auf viele Probleme stoßen und unterschiedliche Lösungen haben. In dieser Tutorial-Zusammenfassung der multifunktionalen Verwendung der kleinen Blackbox erfahren Sie, wie Sie sie verwenden. Im Folgenden finden Sie eine detaillierte Einführung. Werfen Sie also einen Blick darauf! Tutorial zur Verwendung von Little Black Box [31.01.2024] So lösen Sie den bei Little Black Box gekauften CD-Key ein [31.01.2024] So speichern Sie bei Little Black Box gekaufte Spiele in Steam [2024-01- 31] Der bei Little Black Box gekaufte CD-Key kann zurückgegeben werden. Zahlung?

So verwenden Sie Enterprise WeChat – Tutorial zur Verwendung von Enterprise WeChat So verwenden Sie Enterprise WeChat – Tutorial zur Verwendung von Enterprise WeChat Mar 04, 2024 pm 02:28 PM

Viele Freunde wissen nicht, wie man Enterprise WeChat verwendet, daher wird der Redakteur unten das Tutorial zur Verwendung von Enterprise WeChat teilen. Ich glaube, es wird für alle hilfreich sein. Schritt 1: Klicken Sie auf das Symbol „Enterprise WeChat“, um Enterprise WeChat aufzurufen. Im Nachrichtenbereich können wir dem Gruppenchat beitreten, um mit Kollegen zu chatten (wie im Bild gezeigt). Schritt 2: Klicken Sie auf der Hauptoberfläche von Enterprise WeChat auf „Kontaktbuch“ (wie im Bild gezeigt). Schritt 3: Betreten Sie den Adressbuchbereich, wo wir unsere Kontakte anzeigen können (wie im Bild gezeigt). Schritt 4: Klicken Sie auf der Hauptoberfläche von Enterprise WeChat auf „Workbench“ (wie im Bild gezeigt). Schritt 5: Betreten Sie den Werkbankbereich, wo wir die täglichen kleinen Arbeiten des Unternehmens ausführen können (wie im Bild gezeigt). Schritt 6: Klicken Sie auf der Hauptoberfläche von Enterprise WeChat auf „Ich“ (wie im Bild gezeigt).

So verwenden Sie den Thunder-Magnet-Link – Anleitung zur Verwendung des Thunder-Magnet-Links So verwenden Sie den Thunder-Magnet-Link – Anleitung zur Verwendung des Thunder-Magnet-Links Mar 05, 2024 pm 05:22 PM

Kürzlich haben viele Freunde den Herausgeber gefragt, wie man Thunder Magnet Links verwendet. Als nächstes lernen wir das Tutorial zur Verwendung von Thunder Magnet Links. Schritt 1: Zuerst öffnen wir das installierte Thunder und klicken auf die Schaltfläche „Neu“, wie im Bild gezeigt. Schritt 2: Suchen Sie dann im Internet nach einem Magnet-Link, kopieren Sie ihn, fügen Sie ihn an der im Bild unten gezeigten Stelle ein und klicken Sie auf OK, wie im Bild gezeigt. Schritt 3: Das detaillierte Download-Verzeichnis der Ressource wird angezeigt. Wir überprüfen die herunterzuladende Ressource, wählen das Speicherverzeichnis aus und klicken auf Jetzt herunterladen, wie in der Abbildung gezeigt. Schritt 4: Abschließend warten wir auf den Download der Ressourcen, wie im Bild gezeigt. Das Obige ist der gesamte Inhalt zur Verwendung von Thunder-Magnet-Links, den Ihnen der Herausgeber zur Verfügung gestellt hat. Ich hoffe, dass er für alle hilfreich sein kann.

So verwenden Sie den Ons-Simulator – Tutorial zur Verwendung des Ons-Simulators So verwenden Sie den Ons-Simulator – Tutorial zur Verwendung des Ons-Simulators Mar 04, 2024 pm 01:10 PM

Kürzlich haben mich viele Freunde gefragt, wie man den Ons-Simulator benutzt. Als nächstes lernen wir das Tutorial zur Verwendung des Ons-Simulators. Schritt 1: Laden Sie zunächst das Onscripter-Tool herunter, wie unten gezeigt. Schritt 2: Laden Sie dann das Ons-Emulatorspiel herunter. Schritt 3: Ziehen Sie dann die gerade heruntergeladene Simulator-onscripter.exe-Datei direkt in das Spielverzeichnis und doppelklicken Sie auf onscripter.exe, um sie zu öffnen. Schritt 4: Führen Sie das Spiel einfach direkt aus. Das Obige ist der gesamte vom Herausgeber bereitgestellte Inhalt zur Verwendung des Ons-Simulators. Ich hoffe, er kann für alle hilfreich sein.

So verwenden Sie die Sunflower-Fernbedienungssoftware – Tutorial zur Nutzung der Sunflower-Fernbedienungssoftware So verwenden Sie die Sunflower-Fernbedienungssoftware – Tutorial zur Nutzung der Sunflower-Fernbedienungssoftware Mar 04, 2024 pm 10:20 PM

Heutzutage werden viele Freunde die Sunflower-Fernbedienungssoftware verwenden, aber viele Freunde wissen immer noch nicht, wie man die Sunflower-Fernbedienungssoftware verwendet. Heute werde ich alle Tutorials zur Verwendung der Sunflower-Fernbedienungssoftware im Detail vorstellen Ich hoffe, es kann allen helfen. Schritt 1: Öffnen Sie zunächst die Sunflower-Fernbedienungssoftware und stellen Sie sicher, dass die Software erfolgreich eine Verbindung zum Server herstellt (wie im Bild gezeigt). Schritt 2: Geben Sie dann den Remote-Sonnenblumen-Identifikationscode ein (wie im Bild gezeigt). Schritt 3: Sie können den Remote-Bestätigungscode für eine unbeaufsichtigte Remote-Verbindung direkt eingeben oder auf klicken, um die Verbindung über das Remote-Terminal ohne Bestätigungscode zu bestätigen (wie in der Abbildung gezeigt). Schritt 4: Klicken Sie dann auf „Remote-Verbindung“ und die Desktop-Steuerung beginnt mit der Verbindung zum Remote-Desktop (wie im Bild gezeigt). Schritt 5: Nachdem die Verbindung hergestellt wurde, wechselt das System automatisch in die Desktop-Umgebung des Remote-Computers.

Tutorial zur Verwendung von Shuqi Novel Tutorial zur Verwendung von Shuqi Novel Mar 14, 2024 am 08:28 AM

Shuqi Novel ist ein Tool mit umfangreichen Buchressourcen, das kostenlos gelesen werden kann. Die meisten Benutzer wissen nicht, wie sie die Funktionen und Tools in Shuqi Novel verwenden Der Editor bietet Benutzern eine Zusammenfassung der multifunktionalen Tutorials für Shuqi Novel. Interessierte Benutzer können einen Blick darauf werfen! Tutorial zur Verwendung von Shuqi Novel [13.03.2024] Wo sind die Lesezeichen von Shuqi Novel? [13.03.2024] So deaktivieren Sie die automatische Verlängerung der Shuqi Novel-Mitgliedschaft. [13.03.2024] Wo kann ich den VIP von Shuqi erhalten? Roman [13.03.2024] Wo kann man die ID von Shuqis Roman lesen? [13.03.2024] Wo kann man den Einladungscode von Shuqis Roman eingeben? [13.03.2024] Wie kann man Shuqis Roman anhören?

See all articles