项目场景需要计算当期日期在所在年的第几周,用date('W')用法发现一个有意思的情况。 举例: echo date('W',strtotime('20191230'));  //结果01 echo date('W',strtotime('20201230'));  //结果53  
一直想拥有一件东西,当没有它感觉浑身没有劲,做事情都没有目标。 当然,我知道这样不对,但是潜意识是这样的,可能是病了吧。 重要的是,我害怕向父母要钱,因为他们的钱也不是大风刮来的。 我最终,鼓起勇气和父母交涉,沟通,说出原因,然后给出条件的是这钱我向你们借,但我保证一定会还,一定一定。这是
原理: 首先就是先比较相邻的两个元素,如果满足条件,就交换,否则不动。 然后是再比较接下来的两个相邻的元素,然后满足条件就交换,否则依然不动。 依次循环操作下去,最终一个元素,会固定在最下边。 代码: <?php // 冒泡排序 function bubble_sort($arr)
原文地址:https://blog.fanscore.cn/p/22/ 一、背景 公司当前有一个用户群的系统,核心功能是根据不同的条件组去不同的业务线中get符合条件的uid列表,然后存到redis中的bitmap中。 举个
用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则不会(只有echo能这么做)。 如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。 $row[’id’] ,not  $row[id]。 echo 比
写在前面 导出导入的功能是平时开发比较常见的功能了,Laravel Maatwebsite-Excel更新了3.x,这次就自己封装一个简单的通用版并记录一下遇到的问题。 环境 PHP: ^7.3.4 Laravel: ^5.7 安装 composer require maatweb
Q1: == 和 === 之间有什么区别? 话题: PHP困难: ⭐ 如果是两个不同的类型,运算符 == 则在两个不同的类型之间进行强制转换 === 操作符执行’类型安全比较‘ 这意味着只有当两个操作数具有相同的类型和相同的值时,它才会返回 TRUE。 1 === 1: true 1
外观(Facade)模式又叫作门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,外部应用程序不用关心内部子系统的具体细节,这样会大大降低应用程序的复杂度,提高了程序的可维护性。符合迪米特原则 如果我想使用多个类的代码,先
动态地为类的实例添加功能,一层一层的套功能 先定义好接口 interface Booking{ public function getDescription(): string; }   这个就是装饰器实现了Booking,通过构造函数传递Booking对象进来 abstra
以单个对象的方式来对待一组对象 有一个接口类,有一个需实现的方法,其他所有类都实现它,在一个组合类的实现方法中循环调用另外其他类的方法 有一个公共的接口类 interface Renderable { public function render(): string; } 组合
数据映射器是一个数据访问层,用于将数据在持久性数据存储(通常是一个关系数据库)和内存中的数据表示(领域层)之间进行相互转换。其目的是为了将数据的内存表示、持久存储、数据访问进行分离。该层由一个或者多个映射器组成(或者数据访问对象),并且进行数据的转换。映射器的实现在范围上有所不同。通用映射
  获取当前登陆用户: git config user.name //获取当前登录的用户 git config user.email //获取当前登录用户的邮箱   修改登陆用户: git config --global user.name 'userName' // 修
CURLOPT_CONNECTTIMEOUT 连接超时 用来告诉PHP脚本在成功连接服务器前等待多久(连接成功之后就会开始缓冲输出),这个参数是为了应对目标服务器的过载,下线,或者崩溃等可能状况; CURLOPT_TIMEOUT 传输超时 用来告诉成功PHP脚本,从服务器接收缓冲完成前需要
在项目中使用到了curl扩展进行PUT传递数据到另一个接口,但是看到的现象是有时候偶发数据是空的 . 这个时候就使用了tcpdump命令来查看连接情况 具体命令是下面 , 另一个接口的端口号是8025 : tcpdump -i any port 8025 -l -s 0   可以看到在我请
解耦一个对象的实现与抽象,这样两者可以独立地变化。对一个功能进行拆分成两个具体对象,通过构造函数或者方法传递桥接起来两个对象   通过传递另外对象来实现功能,本身保留抽象方法给子类去独立实现 abstract class Service { protected Formatter
原文连接:https://www.wjcms.net/archives/laravel8更新之模型目录及模型工厂类调整 模型目录调整 不久前,泰勒·奥特威尔(Taylor Otwell)在Twitter上进行了一项民意调查,询问社区是否将所有模型都放在一个app/Models文件夹中或使
抽象工厂:在不指定具体类的情况下创建一系列相关或从属对象。最重要的特征就是抽象类的组合.通常,创建的类都实现相同的接口。抽象工厂的客户端并不关心这些对象的创建方式,只是知道它们如何组合在一起。 三个抽象类 interface WriterFactory{ public funct