PHP
文章平均质量分 55
大师老顽童
这个作者很懒,什么都没留下…
展开
-
laravel框架容器的基本实现原理
这段代码来自《laravel 框架关键技术解析》书中的对框架容器框架的提炼,很好的还原了laravel 的服务容器的核心思想,有兴趣的童鞋可以自己执行并研究下代码的逻辑。<?phpinterface Visit{ public function go();}class Train implements Visit{ public function go() { echo "go to Tibet by train" . PHP_EOL;原创 2020-11-18 19:04:20 · 578 阅读 · 0 评论 -
利用静态变量记录并控制递归函数的执行次数
static关键字 在PHP的函数内部中,当我们定义一个变量为static时,需要对该变量进行初始化对该变量赋值且仅初始化一次,由于static修饰的变量是局部的,该变量仅在函数内部有效,当每次调用该函数时,该变量的值都会保留。 利用这一特性,可以统计出递归函数的调用次数,并可以做限制,防止未收敛的函数无线执行下去,造成死循环。原创 2017-09-26 18:40:54 · 3467 阅读 · 0 评论 -
PHP的引用变量
概念使用PHP的引用变量后,可以使不同的变量名称访问同一个变量内容,并且使用了同一个内存地址定义方式使用 & 符号例如下面这段代码:<?php /* * 引用变量 */$a = array(1,2,3,4);echo '首先看到变量$a的值为:'.PHP_EOL;print_r($a);$b = &$a;//这里将变量$a所占内存空间也共享到变量$be原创 2017-09-20 11:22:48 · 398 阅读 · 0 评论 -
安装PHP的Redis扩展
下载与解压 从PHP扩展官网http://pecl.php.net/下载最新版本的redis压缩包: wget http://pecl.php.net/get/redis-3.1.6.tgz 将下载后的压缩包进行解压 :tar -zxvf redis-3.1.6.tgz 安装 cd redis-3.1.6 进入解压完成的目录下,使用phpi...原创 2018-01-15 21:19:40 · 323 阅读 · 0 评论 -
PHP设计模式之装饰者模式:钢铁侠的战衣逐步升级
#钢铁战衣升级标准interface DecorateArmor{ public function generateWeapon();//生成新功能}#待装饰对象 Iron ManClass IronMan implements DecorateArmor{ private $name; public function __construct($name) { $th...原创 2018-11-22 01:05:17 · 231 阅读 · 0 评论 -
git clone重新迁移laravel框架
用git项目管理工具,重新git clone拉取laravel框架的代码,无法直接使用,首先需要解决dependenciescomposer install更新完dependencies后,直接访问,还会发生如下报错:RuntimeException thrown with message "No application encryption key has been speci...原创 2019-06-14 15:41:18 · 493 阅读 · 0 评论 -
PHP的扩展cli模式与php-fpm不一致
在安装php-redis,php-mongodb等扩展的完成时候,在web页面上echo phpinfo()时,扩展详情全部都显示,便以为都安装完成了。但是后来在cli执行时候,发现没有这扩展包含的函数,再使用php -m检查时候,发现并没有这些扩展。 于是查资料的得知,加载扩展是通过读取php.ini配置文件生成。 使用命令:php --ini...原创 2019-07-24 12:18:46 · 2276 阅读 · 0 评论