最佳实践

漫谈 PHP 组件、框架、Composer 那些事

1、什么是组件 组件是一组打包的代码,是一系列相关的类、接口和Trait,用于帮助我们解决PHP应用中某个具体问题。例如,你的PHP应用需要收发HTTP请求,可以使用现成的组件如guzzle/...

由 学院君 发布于3 years ago    浏览数: 31057    点赞数: 77

聊聊 PHP 私有组件以及如何创建自己的 PHP 组件

1、私有组件 大多数时候我们使用的都是公开可用的开源组件,但有时候如果公司使用内部开发的PHP组件,而基于许可证和安全方面的问题不能将其开源,就需要使用私有组件。对Composer而言,...

由 学院君 发布于3 years ago    浏览数: 15806    点赞数: 27

PHP 安全三板斧:过滤、验证和转义之过滤篇 & Laravel底层SQL注入规避

我们在开发应用时,一般有个约定:不要信任任何来自不受自己控制的数据源中的数据。例如以下这些外部源: $_GET $_POST $_REQUEST $_COOKIE $argv ...

由 学院君 发布于3 years ago    浏览数: 23597    点赞数: 19

PHP 安全三板斧:过滤、验证和转义之验证篇 & Laravel底层字段验证实现

2、验证数据 PHP原生实现 验证输入数据也很重要,与过滤不同,验证不会从输入数据中删除信息,而只是确认用户输入是否符合预期。如果输入的是电子邮件地址,则确保用户输入的是电子邮件地址;如果需...

由 学院君 发布于3 years ago    浏览数: 9609    点赞数: 9

PHP 安全三板斧:过滤、验证和转义之转义篇 & Blade 模板引擎避免 XSS 攻击原理探究

PHP 转义实现 把输出渲染成网页或API响应时,一定要转义输出,这也是一种防护措施,能避免渲染恶意代码,造成XSS攻击,还能防止应用的用户无意中执行恶意代码。 我们可以使用前面提到的htm...

由 学院君 发布于3 years ago    浏览数: 12778    点赞数: 10

PHP 开发者如何做好密码保护 & Laravel 底层密码存储和验证实现

随着在线攻击的增多,密码安全越来越重要。作为开发者我们要担负起安全管理、计算哈希和存储用户密码的责任,不管应用是简单的游戏还是绝密商业文件的仓库,都要做到这一点。PHP内置了一些工具,让保护密码...

由 学院君 发布于3 years ago    浏览数: 11642    点赞数: 22

PHP 日期、时间和时区处理 API 及组件

处理日期和时间需要考虑很多事情,例如日期的格式、时区、闰年和天数各异的月份,自己处理太容易出错了,我们应该使用PHP 5.2.0引入的DateTime、DateIntervel和DateTime...

由 学院君 发布于3 years ago    浏览数: 19062    点赞数: 12

PHP 数据库统一处理 API —— PDO 扩展及其在 Laravel 底层的使用

PHP 支持多种数据库,如 MySQL、PostgreSQL、SQLite 和 Oracle 等,并且这些数据库都提供了用于 PHP 和相应数据库之间通信的扩展,如 mysqli、sqlite3...

由 学院君 发布于2 years ago    浏览数: 12853    点赞数: 13

PHP 多字节字符串处理函数及字符编码

mbstring 扩展 我们所说的多字节字符指的是不在传统的 128 个 ASCII 字符集中的字符,比如中文字符。而 PHP 中处理字符串的函数默认假设所有字符都是 8 位字符,占用一个字节...

由 学院君 发布于2 years ago    浏览数: 5601    点赞数: 6

PHP 统一资源处理 API —— 流(Stream)的概述与使用详解

在现代 PHP 特性中,流或许是最出色但使用率最低的。虽然 PHP 4.3 就引入了流,但是很多开发者并不知道流的存在,因为人们很少提及流,而且流的文档也很匮乏。PHP 官方文档对流的解释如下:...

由 学院君 发布于2 years ago    浏览数: 11925    点赞数: 21

深入探讨 PHP 错误异常处理机制及 Laravel 框架底层的相应实现

错误和异常是很强大的工具,能帮助我们预期意料之外的事,使用优雅的方式捕获问题。不过,错误和异常很相似,容易让人混淆,二者都表示出问题了,都会提供错误信息,而且都有错误类型。然而,错误出现的时间比...

由 学院君 发布于2 years ago    浏览数: 16455    点赞数: 23

Search Results