从CakePHP 1.3升级到2.5,cakephp1.3升级2.5_PHP教程
从CakePHP 1.3升级到2.5,cakephp1.3升级2.5
从CakePHP 1.3升级到2.5
摘要:最近把一个CakePHP 1.3的项目升级到了2.x,当然就用最新的版本2.5.3了,结果基本满意。本文记录了升级的过程,包括使用的工具,遇到的问题和相应的解决方法。
这篇文章涉及的内容要求至少有CakePHP中级水平,如果你是刚开始使用CakePHP,建议先不要作这样的尝试,否则遇到问题都不知道怎么解决。
目录
1. 为什么要升级
2. 项目概况
3. 使用的工具
4. 升级的过程
5. 升级之后遇到的问题及解决方法
A. 参考资料
1. 为什么要升级
升级到最新版本有很多好处,可以得到最新的更新和功能,可以使用DebugKit这样的调试工具,可以使用View Block方便地把CSS和JavaScript放在页面中你希望的地方,而不再痛苦地受限于旧的方式,等等。View Block一直是我最希望使用的特性。
2. 项目概况
这个项目的开发大致起始于2012年底,我从2013年中开始参与,到2014年中,所有用户要求的功能基本都完成了。我参与了大概1年左右,只是利用业余时间进行。代码一开始是抄自于一个CakePHP 1.3的项目,而没有使用当时最新的2.x版本,这也使得许多开发工作不能利用框架最新的特性和工具,延长了开发周期。可以说,这个项目从开始就做了错误的选择。先后参与的开发人员前后有6个人之多,多数是临时抓来的,大部分人做一段时间之后就会离开,有些功能甚至没有完成就走人了。而且大家对CakePHP这个框架没有深入的了解,导致这个项目的代码没有一致性,也缺乏统一的计划、架构和规范,没有单元测试。总之,项目的代码质量是不能令人满意的。这些恐怕是大部分业余项目难以避免的问题。
幸好,这个项目不算特别复杂,计有:
- 数据库有36张表
- 19个控制器(Controller)
- 33个模型(Model)
- 63个视图(View)
- 2个插件(Plugin)
- 当然还有其他一些东西
通过这些数据可以看出这个项目的规模,应该说是个中小型网站吧。
3. 使用的工具
升级只使用了2个工具,首先是官方的Upgrade Shell,以及DerEuroMark的Upgrade Plugin。
4. 升级的过程
真正动手升级之前我花了一些时间阅读参考资料中列出的文档,实际的升级过程前后总共花了4天时间,不过这里面相当一部分时间用于升级后的测试、以及寻找解决问题的方法。我毕竟从1年前才开始真正使用PHP和CakePHP来开发实际使用的网站,而且只是利用业余时间,所以时间有限,很多东西也都是边做边摸索学习,主要目标是要完成用户需求所要求的功能,来不及了解CakePHP框架的各个方面。如果你有相应的经验,或者有解决下面所涉及问题的这些知识,这个过程会快许多。
4.1 备份
首先,确保升级之前,应用程序运行良好,做好代码和数据的备份。如果没有备份,请就此打住!!!
我使用Git(TortoiseGit)做源码控制,这让我可以随时回到过去某一个时间点。数据库使用的是MySQL,升级之前也要做好备份。如果升级过程出了问题,进行不下去,备份让你可以恢复到开始升级之前的状态;如果没有备份,那你可就进退维谷了。
4.2 更新CakePHP的核心库到2.x
这个项目在升级前的目录结构,如下图所示,
图中,cake为CakePHP 1.3的核心库,app是应用程序代码。
下载最新的CakePHP,我用的是2.5.3,打开压缩包,如下图所示。
图中的lib目录就是CakePHP的核心库,把这个lib目录拷贝到根目录下,然后删除1.3的cake目录,得到如下图所示的目录结构。
图中的lib\Cake目录就是CakePHP 2.x的核心库。
4.3 准备升级工具Upgrade Shell
Upgrade Shell是CakePHP核心的一部分,位于lib\Cake\Console\目录下,只需确保能够运行CakePHP Console可执行文件就可以了,这可以参考CakePHP Console的文档。如下图所示,
图中的cake是*nix下的可执行文件,cake.bat是Windows下的可执行文件。我采用的做法,是参考了Upgrade Shell的文档,把lib\Cake\Console\目录拷贝到app目录下,这样只是执行的命令行路径有所不同,结果是一样的,如下图所示。

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In diesem Kapitel werden wir die Umgebungsvariablen, die allgemeine Konfiguration, die Datenbankkonfiguration und die E-Mail-Konfiguration in CakePHP verstehen.

Mehrere Methoden für Conda zum Aktualisieren der Python-Version erfordern spezifische Codebeispiele. Übersicht: Conda ist ein Open-Source-Paketmanager und Umgebungsverwaltungssystem zur Verwaltung von Python-Paketen und -Umgebungen. Während der Entwicklung mit Python müssen wir möglicherweise ein Upgrade von einer älteren Python-Version durchführen, um eine neue Version von Python verwenden zu können. In diesem Artikel werden verschiedene Methoden zur Verwendung von Conda zum Aktualisieren der Python-Version vorgestellt und spezifische Codebeispiele bereitgestellt. Methode 1: Verwenden Sie den Befehl condainstall

Das Arbeiten mit der Datenbank in CakePHP ist sehr einfach. In diesem Kapitel werden wir die CRUD-Operationen (Erstellen, Lesen, Aktualisieren, Löschen) verstehen.

So aktualisieren Sie die Numpy-Version: Leicht verständliches Tutorial, erfordert konkrete Codebeispiele. Einführung: NumPy ist eine wichtige Python-Bibliothek für wissenschaftliche Berechnungen. Es bietet ein leistungsstarkes mehrdimensionales Array-Objekt und eine Reihe verwandter Funktionen, mit denen effiziente numerische Operationen ausgeführt werden können. Mit der Veröffentlichung neuer Versionen stehen uns ständig neuere Funktionen und Fehlerbehebungen zur Verfügung. In diesem Artikel wird beschrieben, wie Sie Ihre installierte NumPy-Bibliothek aktualisieren, um die neuesten Funktionen zu erhalten und bekannte Probleme zu beheben. Schritt 1: Überprüfen Sie zu Beginn die aktuelle NumPy-Version

1. Öffnen Sie das Menü mit der Tastenkombination win+x und wählen Sie [Eingabeaufforderung (Administrator) (A)] aus, wie unten gezeigt: 2. Geben Sie nach dem Aufrufen der Eingabeaufforderungsschnittstelle den Befehl [ipconfig/flushdns] ein und drücken Sie die Eingabetaste , wie in der Abbildung unten gezeigt: 3. Geben Sie dann den Befehl [netshwinsockresetcatalog] ein und drücken Sie die Eingabetaste, wie in der Abbildung unten gezeigt: 4. Geben Sie schließlich den Befehl [netshintipreset] ein und drücken Sie die Eingabetaste. Starten Sie den Computer neu und Sie können auf das Internet zugreifen , wie in der folgenden Abbildung gezeigt:

Um in cakephp4 mit Datum und Uhrzeit zu arbeiten, verwenden wir die verfügbare FrozenTime-Klasse.

Viele Freunde haben geäußert, dass sie wissen möchten, wie sie auf ein professionelles Konto in Xiaohongshu upgraden können. Wenn Sie interessiert sind, schauen Sie sich das an. Öffnen Sie die APP „Little Red Book“ auf Ihrem Mobiltelefon, klicken Sie nach der Eingabe auf die Option „Mein“ in der unteren rechten Ecke, suchen Sie dann das Symbol „drei horizontale Linien“ in der oberen linken Ecke der Seite „Mein“ und klicken Sie zum Öffnen Es. 2. Es öffnet sich eine Menüseite, in der Sie durch Klicken den Eintrag „Creation Center“ auswählen und aufrufen können. 3. Suchen Sie als Nächstes auf der Seite, die Sie aufrufen, in den Optionen unter „Creation Services“ nach „More Services“ und klicken Sie darauf, um sie aufzurufen. 4. Klicken Sie nach dem Seitenwechsel in den Optionen unter „Autorenfunktionen“ auf „Professionelles Konto eröffnen“. 5. Schließlich wird das Xiaohongshu Professional-Konto auf der eingegebenen Seite eingeführt. Klicken Sie auf „.

Am 21. Juni fand erneut die Huawei Developer Conference 2024 (HDC2024) in Songshan Lake, Dongguan, statt. Das Auffälligste an dieser Konferenz ist, dass HarmonyOSNEXT offiziell die Betaversion für Entwickler und Pionierbenutzer startet und die drei „königsbrechenden“ innovativen Funktionen von HarmonyOSNEXT in allen Szenarien, nativer Intelligenz und nativer Sicherheit umfassend demonstriert. Native Intelligenz von HarmonyOSNEXT: Beginn einer neuen KI-Ära Nach der Abkehr vom Android-Framework ist HarmonyOSNEXT zu einem wirklich unabhängigen Betriebssystem unabhängig von Android und iOS geworden, was als beispiellose Wiedergeburt bezeichnet werden kann. Unter den vielen neuen Funktionen ist native Intelligenz zweifellos die neue Funktion, die den Benutzern am besten intuitive Gefühle und Erfahrungsverbesserungen vermitteln kann.
