Laravel 5.6 中文文档义,容易造成歧义,有些开发者认为应用的模型指的是业务逻辑,另外一些人则认为模型指的是与关联数据库的交互。 正是因为这个原因,我们默认将 Eloquent 的模型直接放置到 app 目录下,开发者可以自行选择放置的位置。 这是 Laravel 框架作者的想法,不过对于国内开发者,尤其是 PHP 开发者来说,models 目录用于存放与数据库交互的模型类应该没有什么异议, 而业务逻辑应该放到 services 这 SendWelcomeEmail 监听器处理。 Mail 目录 这个目录默认不存在,但是可以通过执行 make:mail 命令生成,Mail 目录包含应用所有邮件相关类,邮件对象允许你在一个地方封装构建邮件所需 的所有业务逻辑,然后使用 Mail::send 方法发送邮件。 Notifications 目录 这个目录默认不存在,你可以通过执行 make:notification 命令连带创建, Notifications 如果你想要定义的中间件在每一个 HTTP 请求时都被执行,只需要将相应的中间件类添加到 app/Http/Kernel.php 的数组属性 $middleware 中即 可: 但除非真的需要,否则我们一般不会把业务级别的中间件放到全局中间件中。 分配中间件到指定路由 如果你想要分配中间件到指定路由,首先应该在 app/Http/Kernel.php 文件中分配给该中间件一个 key,默认情况下,该类 的0 码力 | 377 页 | 14.56 MB | 1 年前3
Laravel 6.0 中文文档此外,当在路由或控制器中使用 $this->authorize 或 者 Gate::authorize 方法时,这些自定义的消息会被自动返回给前 端。 任务中间件 任务中间件允许你封装自定义的队列任务异常业务逻辑,避免在任务 自身处理中混入对应样板代码。例如,在之前的 Laravel 版本中, 你可能需要在频率限制回调中封装某个任务的 handle 方法处理逻 辑: /** * 执行任务 本文档由学院君提供 '); // 处理任务... }, function () { // 无法获取到锁... return $this->release(5); }); } 而在 Laravel 6.0 中,该业务逻辑可以被提取到任务中间件中,从而 将你的任务 handle 方法从频率限制中解放出来: 业务逻辑应该放到 services 这种目录之下。所以推荐 大家在生成模型类的时候指定生成到 app/Models 目录下: php artisan make:model Models/Test 根目录0 码力 | 1442 页 | 14.66 MB | 1 年前3
CmlPHP v2.x 开发手册
高(如遇到攻击)mysql压力过大。先将所有查询转移至缓存。消化压力 高峰 * * 开启时 mysql的查询缓存不会在数据变更时实时更新。 * 所以如果要开启请确定开启后不会对业务造成影响。如:扣积分 前的查询积分数,这种对数据实时要求高的,在开启本模式时要做下判 断并屏蔽。 */ 'emergency_mode_not_real_time_re lopment共用 关于 路由的使用请参看 路由章节 其它配置项 除了常用的配置我们通常还要申明一些跟业务相关的配置项,这是只 要在相应的目录下( cli / development / product / 某个应 用/Config )下创建相应的文件即可,比如我们的业务要添加一个api 接口的配置,这里只要在 cli / development / product / 在这边要特殊说明 $this->db() 这边的 db() 方法,在配置文 件章节中我们看到在normal.php中有配置项 default_db 这个配 置,它是默认连接的数据库集群,如果我们的业务中有需要连接多 个数据库集群呢? 这时只要在 normal.php 中添加相关的数据库 配置项如 'default_db' => [ 'driver' => 'MySql.Pdo'0 码力 | 245 页 | 720.67 KB | 1 年前3
CmlPHP v2.x 开发手册
mysql压力过大。先将所 有查询转移至缓存。消化压力高峰 * * 开启时 mysql的查询缓存不会在数据变更时实时更新。 * 所以如果要开启请确定开启后不会对业务造成影响。如:扣积分前的查询积分数,这种对数据实时要求高 的,在开启本模式时要做下判断并屏蔽。 */ 'emergency_mode_not_real_time_refres ment共用 关于路由的使用请参看 路由章 节 26 其它配置项 除了常用的配置我们通常还要申明一些跟业务相关的配置项,这是只要在相应的目录下 ( cli / development / product / 某个应用/Config )下创建相应的文件即可,比如我们的业务要添加 一个api接口的配置,这里只要在 cli / development / product / 某个应用/Config 在这边要特殊说明 $this->db() 这边的 db() 方法,在配置文件章节中我们看到在normal.php中 有配置项 default_db 这个配置,它是默认连接的数据库集群,如果我们的业务中有需要连接多个 数据库集群呢? 这时只要在 normal.php 中添加相关的数据库配置项如 48 'default_db' => [ 'driver' => 'MySql.Pdo'0 码力 | 143 页 | 1.54 MB | 1 年前3
CmlPHP v2.x 开发手册
攻击)mysql压力过大。先将所有 查询转移至缓存。消化压力高峰 * * 开启时 mysql的查询缓存不会在数据变更时实时更新。 * 所以如果要开启请确定开启后不会对业务造成影响。如:扣积分前的查询积分数,这种对数据实时要求高 的,在开启本模式时要做下判断并屏蔽。 */ 'emergency_mode_not_real_time_refresh_mysql_query_cache' route.php route.php 为路由配置,也是cli/product/development共用 关于路由的使用请参看 路由章节 其它配置项 除了常用的配置我们通常还要申明一些跟业务相关的配置项,这是只要在相应的目录 下( cli / development / product / 某个应用/Config )下创建相应的文件即可,比如我们的业 务 要 添 加 一 个 api 接 在这边要特殊说明 $this->db() 这边的 db() 方法,在配置文件章节中我们看到在 normal.php中有配置项 default_db 这个配置,它是默认连接的数据库集群,如果我们 的业务中有需要连接多个数据库集群呢? 这时只要在 normal.php 中添加相关的数 据库配置项如 'default_db' => [ 'driver' => 'MySql.Pdo', //数据库驱动0 码力 | 251 页 | 973.37 KB | 1 年前3
10 WEB攻击与防护技术 徐震 杨亮 《PHP语⾔程序设计》网络安全: 访问控制(对进出网络的信息进行过滤,并使对 HTTP等协议进行命令级控制) 入侵防范(木马、DDoS、缓冲区溢出) 安全审计 恶意代码防范 数据安全: 数据完整性(应能检测到重要业务数据的完整性 破坏,并采取必要的恢复措施) 第二级 网络安全: 入侵防范(木马、DDoS、缓冲区溢出) 安全审计 1.5.攻击案例 n 略 提纲 一、背景概述 二、典型攻击 三、攻防原理 对所有输出数据进行适当的编码,防止任何已成功注入的脚本在浏览器端运行 n 具体如下: q 输入验证:某个数据被接受为可被显示或存储之前,使用标准输入验证机制, 验证所有输入数据的长度、类型、语法以及业务规则 q 强壮的输出编码:数据输出前,确保用户提交的数据已被正确进行entity编码 (&;<; >; ";),建议对所有字符进行编码而不仅局限于某个子集 q 目标网站看到被 害者发来的合法 请求,执行被请 求的操作由浏览器装载 – 向 目标网站发送GET请求 (包括信任凭证) 应用代码 账号 财务 管理 事务 通信 特权 电子商务 业务程序 隐藏的
标记 包 括针对目标站点的攻击 有 CSRF漏洞的应用 风险 n 执行网站会话(转账、登出) n 访问敏感数据(读取、篡改、添加、删除企业、个人敏感数据) n
0 码力 | 114 页 | 3.65 MB | 1 年前3
Yii 2.0 权威指南t i o n S t r u c t u r e ) ) ) 3 . 1 总 总 总览 览 览 轙 轩 轩 应用参照模型輭 视图輭 控制器 (轍 轖 轃 )1 设计模式来组织。 模型代表数 据、业务逻辑和规则; 视图展示模型的输出;控制器 接受出入并将其转换 为模型和视图命令。 除了 轍 轖 轃 輬 轙 轩 轩 应用还有以下部分: • 入口脚本:终端用户能直接访问的 轐 轈 轐 脚本, 负责启动一个请求处 模 模 模型 型 型 模型是 轍 轖 轃 9 模式中的一部分, 是代表业务数据、规则和逻辑的对象。 可通过继承 譹 譩 譩 譜 譢 譡 譳 譥 譜 譍 譯 譤 譥 譬 或它的子类定义模型类, 基类譹 譩 譩 譜 譢 譡 譳 譥 譜 譍 譯 譤 譥 譬 支持许多实用的特性: • 属性輺 代表可像普通类属性或数组 一样被访问的业务数据輻 • 属性标签輺 指定属性显示出来的标签輻 • 块赋值輺 支持一步给许多属性赋值輻 譍 譯 譤 譥 譬 ,但是由于很 多组件支持譹 譩 譩 譜 譢 譡 譳 譥 譜 譍 譯 譤 譥 譬 , 最好使用它做为模型基类。 3 . 6 . 1 属 属 属性 性 性 模型通过 属性 来代表业务数据,每个属性像是模型的公有可访问属性, 譹 譩 譩 譜 譢 譡 譳 譥 譜 譍 譯 譤 譥 譬 謺 謺 譡 譴 譴 譲 譩 譢 譵 譴 譥 譳 謨 謩 指定模型所拥有的属性。 可像访问一个对象属性一样访问模型的属性輺0 码力 | 537 页 | 4.66 MB | 1 年前3
Laravel 5.3 中文文档最后,Passport 还支持从 JavaScript 应用访问你的 API,而不必担心访问令牌传输,Passport 通 过加密 JWT cookies 和同步 CSRF 令牌来实现这一功能,从而让开发者专注于业务开发。 本文档由 Laravel 学院(LaravelAcademy.org)提供 Laravel 学院致力于提供优质 Laravel 中文学习资源 7 想要学习更多 Passport 代码拷贝过来复制到项目中。 你还要确保在路由文件中调用了 Route::auth()方法,该方法在底层已经为新控制器注册了合适 的路由。 这些新控制器拷贝到应用后,需要重新实现之前在认证控制器中实现的方法和业务。例如,如果 你在自定义用于认证的 guard,需要重写控制器的 guard 方法,你可以检查每个认证控制器的 trait 以判断要重写哪些方法。 注:如果你没有自定义认证控制器,只需要将代码从 些开发者认为应用的模型指 本文档由 Laravel 学院(LaravelAcademy.org)提供 Laravel 学院致力于提供优质 Laravel 中文学习资源 41 的是业务逻辑,另外一些人则认为模型指的是与关联数据库的交互。 正是因为这个原因,我们默认将 Eloquent 的模型直接放置到 app 目录下,从而允许开发者自行选 择放置的位置。 2、根目录0 码力 | 691 页 | 9.37 MB | 1 年前3
Laravel 5.2 中文文档本文档由 Laravel 学院(LaravelAcademy.org)提供 Laravel 学院致力于提供优质 Laravel 中文学习资源 355 7.2 删除任务 最后,让我们添加业务逻辑到路由中执行删除操作,我们可以使用 Eloquent 提供的 findOrFail 方法从数据库通过 ID 获取模型实例,如果不存在则抛出 404 异常。获取到模 型后,我们使用模型的 delete } } 好极了!现在我们已经定义好了关联关系,接下来可以正式开始创建控制器了! 4、路由 在新手入门指南创建的任务管理系统中,我们在 routes.php 中使用闭包定义所有的业务逻 辑。而实际上,大部分应用都会使用控制器来组织路由。 4.1 显示视图 我们还保留一个路由使用闭包:/路由,该路由是用于展示给游客的引导页,我们将在该路 由中渲染欢迎页面。 本文档由 Laravel 如果授权成功,代码会继续执行。如果授权失败,会抛出一个 403 异常并显示一个错误页 面给用户。 注:除此之外,Laravel 还提供了其它授权服务实现方式,可以查看授权文档了解更多。 8.4 删除任务 最后,让我们添加业务逻辑到路由中执行删除操作,我们可以使用 Eloquent 提供的 delete 方法从数据库中删除给定的模型实例。记录被删除后,跳转到/tasks 页面: /** * Destroy the0 码力 | 377 页 | 4.56 MB | 1 年前3
Laravel 5.1 中文文档认证 既然你已经为自带的认证控制器设置好了路由和视图,接下来就准备为应用注册新用户并进 行登录认证。你可以在浏览器中访问定义好的路由,认证控制器已经实现了认证已存在用户 以及存储新用户到数据库中的业务逻辑(通过 trait)。 当一个用户成功进行登录认证后,将会跳转到/home 链接,你需要事先注册一个路由来处理 该跳转。你可以通过在 AuthController 中设置 redirectPath0 码力 | 307 页 | 3.46 MB | 1 年前3
共 10 条
- 1













