- 软件介绍
- 相关专题
- 下载地址
CakePHP简介
CakePHP提供了web开发功能,可以在软件中快速设计新的应用。软件提供代码生成功能,可以快速构建新的应用原型,并提供引导功能。添加数据库、配置HTTP、验证身份、翻译和缓存的功能可以直接在软件中找到,而不必从头开始配置项目。/[k0/]包括符合PSR-18的HTTP客户端。它可以用来发出请求,这是与Web服务和远程API通信的好方法。CakePHP核心分为几个可用的包,灵活而强大的数据库映像库,具有熟悉的类似PDO的API,实体和查询的连接管理和功能,可用于不同的数据存储,垂直数组或可遍历对象的工具库,以及实用程序类,如Inflector、Text、Hash和Secuty。
CakePHP新的功能
第四节的新功能
CakePHP 4.0.0和其他主要的CakePHP版本一样好,但是现在你将被要求使用PHP 7.2。通过更新的应用框架设计,CakePHP 4.0.0自带了简化的API,让你的开发和应用更快。
尽管4.0包含许多重大变化,但我们已经准备了一份详细的迁移指南,涵盖了所有已弃用和已删除的功能,并强调了新功能。
1、控制台
类可以实现defltName()方法来重写基于命令行界面的约定。
2.核心
添加了instance config trait::getconfig fail()和static config trait::getconfig fail()。与其他orFail方法一样,当请求的键不存在或没有空值时,这些方法将引发异常。
3.数据库ˌ资料库
如果数据库的时区与PHP时区不匹配,则可以使用DateTime::setdatabasetzone()。
DateTime::setkeepdatabasedzone()允许您在查询创建的DateTime对象中保留数据库时区。
蛋糕数据库日志日志查询现在实现了JsonSealizable。
蛋糕数据库连接现在允许使用任何PSR-3录像机。因此,那些使用数据库包的用户不再被迫使用cakephp/log包进行日志记录。
蛋糕数据库连接现在允许使用任何PSR-16缓存。因此,使用数据库包的用户不再被迫使用cakephp/cache包进行缓存。新方法cake database connection::setcacher(),cake database connection::getcacher()已添加。
蛋糕数据库约束意图从蛋糕数据源夹具意图中提取。这个接口应该由支持约束的fixture实现,根据我们的经验,约束通常是关系数据库。
在字符中添加图像类型。此类型处理固定长度的字符串列。
添加了datetimefractional和timestampfractional图像类型。这些类型使用分数秒来处理列数据类型。
SqlServer模式现在支持默认值,其中包括SYSDATETIME()等函数。
添加到datetimetimezone和timestamptimezone图像类型中。这些类型处理支持时区的列数据类型。
4、Http
当cakephp/http不包含整个框架时,可以使用它。
CakePHP现在支持PSR-15: HTTP请求处理程序规范。因此,中间件可以实现PSR http server middleware detect。CakePHP 3.x风格的可调用双向中间件仍然支持向后兼容。
蛋糕 Http 客户端现在符合PSR-18: HTTP客户端规范。
cake http client response::issueccess()联接。如果响应状态代码是2xx,则此方法返回true。
PMiddleware增加了使内容安全策略头的定义更容易的功能。
HttpsEnforcerMiddleware连接。这将替换的requireSecure函数SecutyComponent。
Cookies现在支持这个SameSite属。
5.邮件程序
电子邮件生成的责任现在已经转移到蛋糕邮件渲染器。这主要是架构上的变化,不影响Email类的使用。唯一不同的是,您现在需要使用Email::setviewmars()而不是Email::set()来设置模板变量。
6、ORM
Table::saveManyOrFail()添加了一个方法,该方法将引发PersistenceFailedException以及因错误而失败的特定实体。该实体保持交易安全。
Table::Multi()和Table::ManyOrFail()添加了一个方法,可以一次删除多个实体(包括回调)。已删除实体的交易安全性。
添加了Table::newEmptyEntity()来创建新的空实体对象。这不会触发任何字段验证。实体可以作为空记录保存,没有验证错误。
添加蛋糕 ORM rulechecker:: islinkedto()和isNotLinkedTo()。这些新的应用程序规则使您能够确保关联有或没有相关记录。
DateTimeFractionalType持续时间类型添加了一个精度为微秒的新类型类。您可以通过将TypeFactory添加为默认日期时间类型或重新映射单个列来选择使用此类型。请参阅数据库迁移说明,了解如何将此类型自动映射到数据库类型。
DateTimeTimezoneType为支持时区的时间段类型添加了一个新的类型类。您可以通过将TypeFactory添加为默认日期时间类型或重新映射单个列来选择使用此类型。
CakePHP软件特色
控制台命令
除了Web框架,CakePHP还提供了创建命令行工具和应用程序的控制台框架。控制台应用程序是使用现有应用程序配置、模型、插件和域逻辑处理各种背景和任务的理想选择。
/[/k0/
CakePHP控制台
CakePHP控制台使用调度程序类型的系统来加载命令、分析其参数并调用正确的命令。虽然下面的例子使用了bash,但是CakePHP控制台兼容任何* nix shell和Windows。
接受初步测试
调试是任何开发周期中不可避免和必要的一部分。虽然CakePHP没有提供任何可以直接连接到任何ide或编辑器的工具,但是CakePHP确实提供了一些工具来帮助调试和公开应用程序内部正在运行的内容。
CakePHP教程
使用CakePHP
快速获取
类别蛋糕缓存缓存
通过在更快或更近的存储系统中制作所需数据的第二个副本,缓存可用于加快从昂贵或缓慢的资源中读取数据的速度。例如,您可以将开销较大的查询或不经常更改的远程Web服务访问的结果存储在缓存中。一旦进入缓存,从缓存中读取数据比访问远程资源要便宜得多。
Cache类简化了CakePHP的缓存。这个类提供了一个静态接口和一个统一的应用编程接口,可以与各种缓存实现进行交互。CakePHP当您需要构建自己的后端时,提供了几个缓存引擎和一个简单的界面。的内置缓存引擎是:
文件缓存是使用本地文件的简单缓存。它是最慢的缓存引擎,不能为原子工作提供太多的通用性。然而,因为磁盘存储空间通常非常便宜,所以它在文件中很好地存储不常写入的大对象或元素。
Memcached使用Memcached扩展。
Redis使用phpredis扩展。Redis提供了一个类似于Memcached的快速持久的缓存系统,并且还提供了原子工作。
ApcuAPCu缓存使用PHP APCu扩展。该扩展使用网络上的共享内存来存储对象。这使得它非常快,并可以提供原子读/写功能。
WincacheWincache使用Wincache扩展。Wincache在功能和作用上与APC类似,但针对Windows和IIS进行了优化。
数组将所有数据存储在一个数组中。该引擎不提供持久存储,是为应用程序测试套件设计的。
空引擎实际上不存储任何东西,所有读取都将失败。
无论您选择使用哪种缓存引擎,您的应用程序都会与CakeCacheCache交互。
配置缓存引擎
静态蛋糕缓存缓存::setconfig ($ key,$ config = null)
您的应用程序可以在其引导过程中配置任意数量的“引擎”。缓存引擎配置在config/app.php中定义。
为了获得最佳性能,CakePHP需要定义两个缓存引擎。
_cake_core_用于存储国际化和本地化文件的文件映射和解析结果。
_cake_model_,用于存储应用程序模型的模式描述。
使用多种引擎配置还允许您根据需要增量更改存储。例如,在config/app.php中,您可以输入以下内容:
选项也可以作为DSN字符串提供。这在使用环境变量或PaaS提供程序时非常有用:
使用DSN字符串时,您可以将任何其他参数/选项定义为查询字符串参数。
您也可以在运行时配置缓存引擎:
这些引擎构造的名称(短的和长的)用作$config参数CakeCacheCache::wte()和cake cache:: read()。配置缓存引擎时,可以使用以下语法来引用类名:
使用文件引擎时,您可能需要使用此掩码选项来确保缓存文件具有正确的权限。
发动机选项
每个引擎都接受以下选项:
持续时间指定此缓存配置中的项目持续的时间。指定为strtotime()兼容表达式。
Gups与此配置中存储的每个密钥相关联的组或“标签”列表。当您需要从缓存中删除数据子集时非常有用。
前缀在所有条目之前。这适用于需要与另一个缓存配置或另一个应用程序共享密钥空间的情况。
pbability命中缓存gc清理的可能性。设置为0将禁用缓存::gc()的自动调用。
文件引擎选项
文件引擎使用以下特定于引擎的选项:
IsWindows自动使用主机是否为Windows填充?
写之前应该锁定文件吗?
屏蔽用于创建文件的屏蔽。
路径应该保存缓存文件的路径。默认为系统的临时目录。
重新引擎选项
RedisEngine使用以下特定于引擎的选项:
端口Redis正在运行端口。
主机Redis是运行的主机。
数据库用于连接的数据库号。
密码Redis密码。
持久是否应该与Redis建立持久连接。
超时Redis连接超时。
unix_socket Redist的unix套接字的路径。
MemcacheEngine选项
压缩是否压缩数据。
访问Memcache的用户名登录。
密码访问Memcache的密码。
持久连接的名称。使用相同持久值的所有配置将共享一个基本连接。
用于序列化数据的序列化程序引擎。可用的引擎有php、igbinary和json。除了php之外,memcached扩展必须用适当的序列化程序支持来编译。
sMemcached的字符串或数组。如果它们是阵列,MemcacheEngine会将它们用作池。
选项其他选项缓存的客户端。选项= & gt一组值。使用Memcached::OPT_*常量作为键。
配置缓存回退
如果引擎不可用,例如,文件引擎试图写入未写入的文件夹,或者RedisEngine无法连接到Redis,则引擎将返回到noopNullEngine并触发可记录错误。这可以防止应用程序由于缓存故障而引发未捕获的异常。
您可以使用回退配置键将缓存配置配置回指定的配置:
如果redis意外失败,写Redis缓存配置将恢复为写deflt缓存配置。如果在这种情况下写deflt缓存配置失败,引擎将再次返回到NullEngine,并防止应用程序引发未捕获的异常。
您可以使用以下命令关闭缓存后备假:
如果没有后备缓存,故障将作为异常抛出。
删除已配置的缓存引擎。
静态蛋糕缓存缓存::dp($ key)
创建配置后,您不能更改它。相反,您应该删除配置并使用CakeCacheCache::dp(),然后重新创建它CakeCacheCache::setConfig()。删除缓存引擎将删除配置和适配器(如果已构建)。
写缓存
静态蛋糕缓存缓存::wte($ key,$ value,$ config = & # 8217德福特& # 8217;)
Cache::wte()将$ value写入缓存。您可以稍后通过引用来读取或删除值$key。您还可以指定一个可选配置来存储缓存。如果$config未指定,将使用默认值。Cache::wte()可以存储任何类型的对象,是存储模型搜索结果的理想选择:
使用Cache::wte()和Cache::read()来减少访问数据库以获取帖子的次数。
如果您计划使用CakePHP ORM缓存查询结果,最好使用Query Object的内置缓存功能,如“缓存加载的结果”一节所述。
一次写多个键。
静态蛋糕缓存缓存::wtemany ($ data,$ config = & # 8217德福特& # 8217;)
您可能会发现需要一次写入多个缓存键。虽然可以多次调用wte(),但wteMany()允许CakePHP在可用时使用更高效的存储API。例如,wteMany(),使用Memcached时保存多个网络连接:
读取缓存
静态蛋糕缓存缓存::记住($ key,$ callable,$ config = & # 8217德福特& # 8217;)
缓存使读取缓存变得容易。如果指定的缓存密钥存在,则返回该密钥。如果键不存在,将调用可调用对象,并将结果存储在缓存中提供的键处。
例如,您经常需要缓存远程服务调用的结果。您可以使用以下简单的方法来记住():
从缓存中读取
静态蛋糕缓存缓存::读取($ key,$ config = & # 8217德福特& # 8217;)
Cache::read()用于从$config中读取下一个存储的缓存值$key。如果$config为空,将使用默认配置。缓存::read()如果它是有效的缓存,或者如果空缓存已过期或不存在,将返回缓存的值。使用严格的比较运算符= = =或!= =操作是否成功缓存::读取()。
示例:
或者,如果使用另一个名为的缓存来配置短缓存,可以在缓存::读取()中指定它,然后按缓存::wte()调用它,如下所示:
- 安卓合集
- 软件合集
- 浏览器
- 电脑管家
- 安卓游戏
软件排行榜
热门推荐
-
VMware InstallBuilder Enterprise破解版
v20.12.0 / 347 MB / 简体中文
-
Spark Studio官方版
v2.6.3 / 7.78 MB / 简体中文
-
Yearning SQL审核平台官方版
v2.3.2 / 10.2 MB / 简体中文
-
Protege官方版
v5.5 / 38.3 MB / 简体中文
-
HUAWEI LiteOS Studio官方版
v1.45.6 / 115 MB / 简体中文
-
Huawei LiteOS官方版
v5.0.0 / 87.6 MB / 简体中文
-
C语言代码实例助手官方版
v1.0 / 38.5 MB / 简体中文
-
idle python中文汉化版
v3.7 / 1.62 MB / 简体中文
-
Metabase官方版
v0.37.5 / 45.8 MB / 简体中文
-
编程猫硬件助手官方版
v1.4.1.0 / 39.3 MB / 简体中文
装机必备软件
-
word文档密码破解工具应用软件
-
冰点还原永久免费版系统软件
-
人生日历应用软件
-
一彩送货单管理系统应用软件
-
Process View系统软件
-
开心手机恢复大师其他类别
-
pdf文件阅读器应用软件
-
视频剪辑格式工厂应用软件
-
PhotoMetri应用软件
-
specinker应用软件
-
miwifi驱动驱动工具
-
海洋色音效助手影音软件
-
乐播投屏影音软件
-
seo外链助手网络软件
-
AES安全加密记事本安全相关





