![](https://img-blog.csdnimg.cn/20201014180756922.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php
小男孩tom
搏一搏,单车变摩托!!!
展开
-
php xdebug调试
php xdebug原创 2022-11-29 23:23:16 · 197 阅读 · 0 评论 -
简单易懂的说下PHP中的IOC控制反转、DI依赖注入、反射
文章目录一、参考资料二、正文一、参考资料php-ioc-di容器控制反转依赖性注入简单易懂的说下php ioc控制反转 di容器二、正文DI容器就是指当你需要一个资源的时候直接找容器要,容器接管了主导权,这也就是相对平常我们需要正向去主动new一个对象,现在就是被DI容器“反转控制”了,我们只能去求这它要,从而被动接受了,其中我需要的对象也好资源也罢,它们的依赖关系咱都别管容器来搞定,这就是IOC和DI。class phone{ public $obj; public fun转载 2021-10-14 12:44:38 · 102 阅读 · 0 评论 -
Hyperf 框架
文章目录一、介绍一、介绍1、资料官方文档Windows上配置Hyperf原创 2021-10-12 17:09:48 · 1147 阅读 · 0 评论 -
Linux 下PHP修改端口号
目录1、php7修改端口号2、php5修改端口号1、php7修改端口号1)安装的PHP7配置文件所在路径是 /usr/local/php7/etcvim /usr/local/php7/etc/php-fpm.d/www.conflisten = 0.0.0.0:90002)启动php/usr/local/php7/sbin/php-fpm2、php5修改端口号1)安装的PHP5配置文件所在路径是 /usr/local/php5/etcvim /usr/local/php5/etc/php原创 2021-04-01 10:05:54 · 828 阅读 · 0 评论 -
源码安装LNMP环境
好久没有源码搭建LNMP环境了,作为回顾给大家总结一下。安装依赖yum updateyum -y install gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel* make cmake openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel pcre-原创 2020-12-13 16:55:07 · 142 阅读 · 0 评论 -
版本号的比较
plan1:// 1 前者更大,0 后者更大, -1 相同// 支持多位比较function versionCompare($versionA, $versionB){ $dm = '.'; $verListA = explode($dm, (string)$versionA); $verListB = explode($dm, (string)$versionB); $len = max(count($verListA), count($verListB));原创 2020-07-22 00:08:29 · 166 阅读 · 0 评论 -
Thinkphp 开发过程中遇到的坑
1、APP_DEBUG改成false上线之后发现:“页面错误!请稍后再试~TP框架页面错误!请稍后再试把APP_DEBUG改成false上线之后发现:“页面错误!请稍后再试~”.问题一般是出在,display() 指定某个具体的模板文件后win/Linux都正常public function addUser() { // $this->display(); // display不指定具体某个模板文件的时候,取当前方法名转小写,win下正常,Linux下报错 $this->原创 2020-07-02 09:37:17 · 491 阅读 · 0 评论 -
PHP通过URL获取文件大小
PHP通过URL获取文件大小function getFileSize($url){ $url = parse_url($url); if($fp = @fsockopen($url['host'],empty($url['port'])?80:$url['port'],$error)){ fputs($fp,"GET ".(empty($url['path'])?'/':$url['path'])." HTTP/1.1\r\n");原创 2020-06-23 17:49:52 · 612 阅读 · 0 评论 -
PHP注释标记整理
参考:PHP注释标记整理什么是注释标记注释标记用于生成文档, param指明需要接收的参数在使用 phpDocumentor 等工具生成文档时, 会识别相关注释, 而且IDE也会识别, 在编码的过程中会给出提示.PHP注释标记总结@api: 提供给第三方使用的接口@author: 标明作者@param: 参数@return: 返回值@todo: 待办@version: 版本号...转载 2020-04-10 17:33:57 · 318 阅读 · 0 评论 -
PHP捕获错误异常
参考:php错误处理在创建脚本和 web 应用程序时,错误处理是一个重要的部分。如果您的代码缺少错误检测编码,那么程序看上去很不专业,也为安全风险敞开了大门如果在本地程,序调试时出现系统致命性错误可以设置error_reporting(E_ALL)来显示所有错误信息,但在服务器中我们是不能这样做的,这样很容易暴露系统信息。方法一:我们可以自定义系统报错函数:set_error_handle...原创 2019-12-27 22:38:31 · 301 阅读 · 0 评论 -
Laravel API 限速异常 HTTPException Too Many Attemps
对应的配置在 Laravel 项目文件 app/Http/Kernel.php'api' => [ 'throttle:60,1', 'bindings',]第一个参数 60 代表每分钟限制 60 次请求第二个参数 1 代表触发了限制规则,则1分钟内禁止访问将 60 调整成 120 就可以保证本地 debug 不会被频繁限制了。参考 :https://www.sunzh...原创 2019-09-04 17:03:21 · 733 阅读 · 0 评论 -
php编译问题汇总
参考:linux下编译安装php各种报错大集合添加链接描述1、抛错/usr/src/php-5.2.0/ext/iconv/iconv.c:2419: undefined reference to `libiconv_open’collect2: ld returned 1 exit statusmake: *** [sapi/cli/php] Error 1解决方法#make ZE...原创 2019-07-23 15:37:42 · 239 阅读 · 0 评论 -
php-fpm
首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者。 web server(比如说nginx)只是内容的分发者。比如,如果请求/index.html,那么web server会去文件系统中找到这个文件,发送给浏览器,这里分发的是静态数据。好了,如果现在请求的...原创 2019-07-22 15:25:54 · 159 阅读 · 0 评论 -
php扩展安装
扩展的安装以swoole安装包为例,安装php的扩展模块要注意以下几点:1)扩展模块的下载包要是最新版的,并且是稳定版的,低版本或bata版本的安装后,php可能加载不起来。2)当本地服务器上有多个php版本时,扩展模块在编译时一定要加上–with-php-config=/home/pubsrv/php7/bin/php-config,否则会出现诸如PHP Warning: PHP Start...原创 2019-07-25 12:31:08 · 250 阅读 · 0 评论 -
Laravel日常开发总结
一、文件目录的管理作用命令在 app/Console/ 中创建artisan启动命令php artisan make:command 驼峰服务名\驼峰脚本名创建Controllerphp artisan make:controller 驼峰服务名\驼峰以Controller结尾的脚本名创建Modelphp artisan make:model Models\...原创 2019-06-15 13:15:29 · 152 阅读 · 0 评论 -
Larave 框架基础知识
摘要:该博文对应的是 :Laravel 5.6.33框架下载composer create-project --prefer-dist laravel/laravel Laravel5.6_my "5.6.*"注:Laravel5.6_my 要下载到的文件,"5.6.*" 要下载的版本号2.命令行启动php artisan serve3、数据库的连接在 \config\d...原创 2019-04-18 19:38:42 · 242 阅读 · 0 评论 -
open_basedir限制每个站点的目录范围,防止跨站
open_basedir作用:将用户可操作的文件限制在某目录下;配置时常出现的问题 :open_basedir restriction in effectfastcgi.conf中的修改php.ini中的修改Nginx中也需要进行一些改动:在nginx 每个server下,加上fastcgi_param PHP_VALUE "open_basedir=$document_r...原创 2019-04-12 11:08:29 · 2456 阅读 · 0 评论 -
php扩展库及常用的类库
1、phpspider php爬虫;原创 2018-09-19 12:13:10 · 848 阅读 · 0 评论 -
php面向对象基础
还未开始。。。静态方法的应用场景;static的使用;常用的魔术方法;接口的定义;public、private、protected的区别;抽象方法;原创 2018-09-19 12:22:26 · 267 阅读 · 0 评论 -
php相关网站
php类库:● composer扩展安装官方网站原创 2018-10-12 15:50:11 · 205 阅读 · 0 评论 -
引用变量(&)
参考:PHP引用(&)使用详解摘要:引用的官方解释引用概念:不同的名字访问同一个变量内容。使用场景:变量的引用PHP 的引用允许你用两个变量来指向同一个内容<?php $a="ABC"; $b =&am原创 2018-10-15 13:38:29 · 840 阅读 · 0 评论 -
流程控制
待开始。。。原创 2018-10-18 12:41:11 · 125 阅读 · 0 评论 -
设计模式
待整理。。。。一、单例模式单例模式也叫单态模式。可以保证,一个类只能有一个对象实例。实现要点:①构造函数私有化,不允许使用new关键字创建对象。②对外提供获取对象的方法,在方法中判断对象是否为空。如果为空,则创建对象并返回;如果不为空则直接返回。③实例对象的属性以及获取对象的方法必须都是静态的。④之后,创建对象只能使用我们提供的静态方法。eg:$s1 = Singleton:...原创 2018-10-19 11:56:39 · 151 阅读 · 0 评论 -
MVC设计原则
参考:面向对象设计的SOLID原则如何使用服务模式?原创 2018-10-30 13:17:36 · 1537 阅读 · 0 评论 -
Restful HTTP API 设计分解
摘要什么是 RESTfulRESTful 是一种软件设计风格,可以解释为用 URL 定位资源,用 HTTP 动词描述操作。RESTful特点安全可靠,高效,易扩展简单明了,可读性强,没有歧义API风格统一,调用规则,传入参数和返回数据有统一的标准RESTful设计原则1、HTTPSHTTPS 为接口的安全提供了保障,可以有效防止通信被窃听和篡改。而且现在部署 HTTP...原创 2018-11-02 12:32:05 · 321 阅读 · 1 评论 -
array_multisort()函数详解
参考:https://www.cnblogs.com/WuNaiHuaLuo/p/5794669.htmlarray_multisort()是数组排序函数,可以对多个PHP数组进行排序,排序结果是所有的数组都按第一个数组的顺序进行排列。先举个例子:例如array_multisort(a,a,a,b),a,a,a,b是两个数组,如果排序之后,a数组的第3个元素被排到了第一位,那么a数组的第3个元...原创 2018-11-16 15:54:27 · 8019 阅读 · 1 评论 -
Thinkphp框架常用的技巧
1、性能调试,打印代码的执行时间Debug::remark('begin');// ...其他代码段Debug::remark('end');// ...也许这里还有其他代码// 进行统计区间echo Debug::getRangeTime('begin','end').'s';参考:https://www.kancloud.cn/manual/thinkphp5/126078...原创 2019-02-22 14:42:57 · 219 阅读 · 0 评论 -
日志的记录方法
摘要:日志的记录时发现问题的最直观的方法,记录日志的方法也很多,因人而异;方法一(自己封装的方法):/** * 生成日志 * @return str * @author Tom * @Time 2018/03/06 15:33 */function logInfo($info, $address=null, $fileName = 'log'){ $debugInfo = ...原创 2019-03-11 14:37:22 · 350 阅读 · 0 评论 -
PHP中封装的方法-私藏
1、php输出26大小写字母for($i=65;$i<91;$i++){ echo strtolower(chr($i)).' ';//输出小写字母 echo strtoupper(chr($i)).' ';//输出大写字母}应用场景:Excel导出时计算单元格的位置...原创 2019-03-21 11:11:22 · 41 阅读 · 0 评论 -
封装PhpSpreadsheet类库实现Excel导出
一、背景介绍:PhpSpreadsheet是PHPExcel的下一个版本。它打破了兼容性,大大提高了代码库质量(命名空间,PSR合规性,最新PHP语言功能的使用等)。由于所有努力都转移到了PhpSpreadsheet,因此将不再维护PHPExcel。PHPExcel,补丁和新功能的所有贡献都应该针对PhpSpreadsheet开发分支。前提:TP5项目中已经安装配置好Composer 管理工...原创 2019-03-21 12:31:39 · 1175 阅读 · 0 评论 -
牛逼的函数!
1、serialize()函数序列化对象后,可以很方便的将它传递给其他需要它的地方,且其类型和结构不会改变。使用场景:当遇到一对多的场景时,多的数据结构不复杂的情况,可使用该函数记性存储,减少了表的关联;...原创 2019-03-13 17:54:39 · 507 阅读 · 0 评论 -
自动加载spl_autoload_register
spl_autoload_register原创 2018-09-16 19:24:36 · 142 阅读 · 0 评论