
php
LCRxxoo
为了积分
展开
-
composer has unpushed changes on the current branch
可能原因是分支名问题,例如composer.json里版本是dev-xxx(xxx为分支)。而xxx的值是abc-dev那么就会出现has unpushed changes on the current branch原因是composer命令最终解析成git diff --name-status composer/abc...abc -- 而不是abc-dev...原创 2021-02-01 14:58:17 · 574 阅读 · 0 评论 -
__PHP_Incomplete_Class 错误处理
//该错误通常是两套php代码公用了redis,mysql等数据class A{ public $name = 'admin_a'; } class B{ public $name = 'admin_b'; } $objA = new A(); $objB = new B(); $serializedObjA = serialize($objA); $serializedObjB = serialize($objB); //如果classA 不存在与代码,那么原创 2020-07-29 10:34:05 · 1038 阅读 · 0 评论 -
php 安装扩展管理工具 pecl
curl -o go-pear.php https://pear.php.net/go-pear.phar \ && php go-pear.php \ && ln -s /usr/local/php/bin/pecl /sbin/pecl \ && ln -s /usr/local/php/bin/pear /sbin/pear \原创 2020-07-21 14:23:49 · 278 阅读 · 0 评论 -
php慢日志总有+++ dump failed错误
表达意思:日志输出错误原因猜测:fpm的缓冲区不足导致日志不能写完整php源码:原创 2020-04-13 10:20:56 · 2370 阅读 · 0 评论 -
yii2 去除mysql 的转义符(`)
原创 2018-08-08 14:51:58 · 1669 阅读 · 0 评论 -
php 使用curl时,添加cookie
curl_setopt ( $ch , CURLOPT_COOKIE , 'BAIDUID=A7281E0926CB37D791AD464CDD646CF2:FG=1; BIDUPSID=A7281E0926CB37D791AD464CDD646CF2; PSTM=1520817729; REALTIME_TRANS_SWITCH=1; FANYI_WORD_SWITCH=1; HISTORY_S...原创 2018-05-30 14:56:17 · 7928 阅读 · 0 评论 -
yii2 配置多一个缓存支持
web.php文件'cache' => [ 'class' => 'yii\caching\FileCache', ],'cacheDb' => [ 'class' => 'yii\caching\DbCache', 'cacheTable' => 'flight-minpric...原创 2018-05-30 13:02:03 · 604 阅读 · 0 评论 -
php 缓存文件的核心
//创建文件if (@file_put_contents($cacheFile, $value, LOCK_EX) !== false) { if ($this->fileMode !== null) { @chmod($cacheFile, $this->fileMode); } if ($duration原创 2018-04-28 17:19:52 · 277 阅读 · 0 评论 -
php AES/ECB/PKCS5_padding算法(约定的key 是由0x位数组成的)
class HtSecurity extends Object{ /** * 生成短连接 * @param $OtaUrl string URL地址 * @return int|false */ public static function encrypt($input, $key) { //将16进制字符串转为正常的字符窜 ...原创 2018-04-05 16:32:38 · 1596 阅读 · 0 评论 -
php 仅仅读取类中的共有属性
<?phpclass Foo { public $foo = 1; protected $bar = 2; private $baz = 3;}$foo = new Foo();$reflect = new ReflectionClass($foo);$props = $reflect->getProperties(ReflectionProper...原创 2018-03-05 22:41:36 · 540 阅读 · 0 评论 -
LINUX下PHP安装VLD扩展
如果想查看OPCODE代码来实现性能优化的目的,那么需要安装VLD扩展。①http://pecl.php.net/package/vld 到该地址下载最新最稳定的安装包,或者直接通过wget 下载对应的版本②解压该文件 tar zxvf vld-0.13.0.tgz③cd到vld-0.13.0.tgz文件内转载 2018-03-04 15:12:04 · 501 阅读 · 0 评论 -
php 抽奖概率算法
/* * 不同概率的抽奖原理就是把0到*(比重总数)的区间分块 * 分块的依据是物品占整个的比重,再根据随机数种子来产生0-* 中的某个数 * 判断这个数是落在哪个区间上,区间对应的就是抽到的那个物品。 * 随机数理论上是概率均等的,那么相应的区间所含数的多少就体现了抽奖物品概率的不同。 */ function get_rand($proArr) { $result转载 2018-01-31 23:50:21 · 968 阅读 · 0 评论 -
yii2 动态更改组件配置
$data=[ 'components' => [ // list of component configurations 'user' => [ 'class' => 'yii\web\User', 'identityClass' => 'xxxxxxxxx', 'ena...原创 2018-06-01 17:21:41 · 3461 阅读 · 0 评论 -
yii2中限制访问某控制器的IP(IP白名单)
有关Yii2.0鉴权之访问控制过滤器参考类手册 http://www.yiiframework.com/doc-2.0/guide-security-authorization.html前提:需要配置user组件use yii\web\Controller;use yii\filters\AccessControl;class SiteController extends Controlle...转载 2018-06-02 14:48:04 · 2031 阅读 · 1 评论 -
php 错误采集
register_shutdown_function(function () { file_put_contents(\Yii::getAlias('@runtime').'/apiLog/error.log', print_r(error_get_last(), 1)); });该函数是注册一个当发生错误时,执行匿名函数 error_ge...原创 2018-07-10 17:49:52 · 313 阅读 · 0 评论 -
php异步请求实现,实现异步执行代码
/** * php异步请求 * * @param $host string 主机地址 * @param $path string 路径 * @param $param array 请求参数 * @return string */public static function asyncRequest($host, $path, $param = array()){ ...原创 2018-08-02 14:02:08 · 2781 阅读 · 0 评论 -
利用MySQL的表实现树的构建以及优化(php代码)
数据结构表结构介绍:程序设计过程中,我们常常用树形结构来表征某些数据的关联关系,如企业上下级部门、栏目结构、商品,省份存储,分类等等,通常而言,这些树状结构需要借助于数据库完成持久化。然而目前的各种基于关系的数据库,都是以二维表的形式记录存储数据信息,因此是不能直接将Tree存入DBMS,设计合适的Schema及其对应的CRUD算法是实现关系型数据库中存储树形结构的关键。理想中树形结构应该具备...原创 2018-08-13 09:39:10 · 608 阅读 · 0 评论 -
php curl追踪句柄的请求字符串
curl_setopt($ch, CURLINFO_HEADER_OUT, true);//追踪头部信息curl_getinfo($ch,CURLINFO_HEADER_OUT)原创 2018-08-31 11:56:53 · 551 阅读 · 0 评论 -
PHP预定义接口之 ArrayAccess
class ResultSet implements \ArrayAccess{ /** * 返回的错误码 **/ public $code; /** * 返回的错误信息 **/ public $msg; /** * Returns whether there is an element at th...原创 2018-09-11 10:14:52 · 291 阅读 · 0 评论 -
php -yield关键字理解
生成器函数的核心是yield关键字。它最简单的调用形式看起来像一个return申明,不同之处在于普通return会返回值并终止函数的执行,而yield会返回一个值给循环调用此生成器的代码并且只是暂停执行生成器函数。Example #1 一个简单的生成值的例子<?phpfunction gen_one_to_three() { for ($i = 1; $i <= 3;...原创 2018-12-10 18:22:22 · 290 阅读 · 0 评论 -
PHP7和CryptoJS的AES加密方式互通 AES-128-ECB
PHP类:class AES{ /** * * @param string $string 需要加密的字符串 * @param string $key 密钥 * @return string */ public static function encrypt($string, $key) { // ...原创 2019-04-29 18:12:16 · 3070 阅读 · 5 评论 -
php 垃圾回收机制
可能根缓冲区(possible roots): 存放垃圾回收期间遍历的变量添加到跟缓冲区的时机: 当ZEND_UNSET_VAR发生或zend_assign_to_variable仅在可能产生垃圾节点时调用时,可以将节点添加到所有根。将调用gc_possible le_root()将节点添加到可能的根。变量在缓冲区的状态:* BLACK (GC_BLACK) ...翻译 2019-07-07 22:02:19 · 737 阅读 · 0 评论 -
使用PHP+Swoole实现的网页即时聊天工具:PHPWebIM
使用PHP+Swoole实现的网页即时聊天工具全异步非阻塞Server,可以同时支持数百万TCP连接在线同时支持websocket+comet2种兼容协议,可用于所有种类的浏览器包括IE拥有完整的UI界面支持单聊/群聊/组聊等功能支持发送表情支持永久保存聊天记录基于Server PUSH的即时内容更新,登录/登出/状态变更/消息等转载 2018-01-31 09:44:13 · 1891 阅读 · 0 评论 -
php 引用不是指针
指针会存放地址值引用仅仅是一个标识原创 2018-01-04 14:54:46 · 552 阅读 · 0 评论 -
PHP use关键词作用
假如代码不是在同一个文件中,那么命名空间中的use关键词的作用是什么呢,难道use关键词会自动解释对应文件里的代码?应该不会。所以就要与自动加载功能结合,告诉编译器那些命名空间里的代码在那个文件中原创 2018-01-03 16:15:59 · 526 阅读 · 0 评论 -
Windows下swoole扩展的编译安装部署
Windows下swoole扩展的编译安装部署1. 到cygwin官网下载cygwin。 官网地址:https://www.cygwin.com/ 2. 打开下载好的cygwin安装包,开始安装cygwin。 选择cygwin的安装目录(这个同时也会是swoole的安装目录): 选择文件包下载的存放位置:转载 2017-03-20 09:18:23 · 733 阅读 · 0 评论 -
PHP 回调函数理解
你的理解是错误的!自己调用自己 称之为“递归”,而不是回调你也知道回调的关键是这个回既然是回,那么就有一个谁是主体的问题,因为回调是往回调用的意思我调用了函数A,而函数A在执行过程中调用了我提供的函数B,这个函数B就称为函数A的回调函数显然主体是函数A我们知道,函数是完成某个特定功能的代码集合,在函数执行的过程中,一般是不能去干预他的行为的当函数被设计成带有回调转载 2017-07-16 14:13:27 · 723 阅读 · 0 评论 -
php if与switch区别
if条件可以有先决条件(优先级别),switch平等判断原创 2017-06-12 11:29:51 · 821 阅读 · 0 评论 -
php 获取url请求对应信息
var_dump(apache_request_headers());//获取请求头部信息var_dump(apache_response_headers());//获取相应信息var_dump( http_response_code());//获取状态码原创 2017-07-11 16:42:12 · 500 阅读 · 0 评论 -
微信昵称特殊字符存储 PHP MYSQL
php 解决微信昵称emoji表情插入MySQL报错在PHP接受到微信用户昵称入库的时候报错原因:utf-8 最大3个字节,而emoji占4个字节解决办法:1.修改mysql 数据库的字符集,改为utf8mb4,但是前提是MySQL的版本需要5.5以上由于我用的MySQL还是5.0的,所以用其他方法2.用PHP过滤emoji 1 privat转载 2017-06-20 14:57:58 · 5732 阅读 · 0 评论 -
linux下xdebug安装
centos系统下:wget https://xdebug.org/files/xdebug-2.4.0.tgz //这下载的版本要对应php的版本tar -zxvf xdebug-2.4.0.tgz //解压文件cd xdebug-2.4.0 //进入到对应的文件phpize //检验是否有这命令./configure //这一步是为了检查php相关版本信息,如果跟你原创 2017-05-28 10:19:12 · 945 阅读 · 0 评论 -
手机端 顽固存在的session
ps:xxx是一样的访问xxx.com而创建的session,与访问www.xxx.com而创建的session是不同的,所以在xxx.com使用$_SESSION=null是改变不了www.xxx.com下的session原创 2017-04-26 16:40:57 · 1537 阅读 · 0 评论 -
php 自制时间格式化
date_create_from_format("YmdHis",$v['pay_time']);echo date_format($date,"Y-m-d H:i:s")原创 2017-05-15 11:58:57 · 299 阅读 · 0 评论 -
post提交中神秘消失的post数据
如上图,在控制台中可以看到name 为store_id是有值的 但在服务器接收$_POST中store_id 却是没有的其实就是提交的表单中下面还要一个input 的name 也是为store_id原创 2017-04-24 11:19:15 · 1149 阅读 · 0 评论 -
php 模拟高并发访问
//利用curl_multi_init()curl批处理命令classic_curl_main1.php//主文件ini_set("display_errors", "off");header("Content-type: text/html; charset=utf-8"); $url='http://localhost/concurrent/client_1.php';转载 2017-07-25 14:49:47 · 3854 阅读 · 0 评论 -
memcache具体使用场景
其一 多用户同时查询相同的sql数据原创 2017-08-07 10:04:20 · 392 阅读 · 0 评论 -
PHP 将大量数据导出到 Excel 的问题
1 文件执行时间限制 解决set_time_limit(0);ini_set('max_execution_time', '0');2内存上限解决ini_set("memory_limit","512M");上面都是治标不治本的 真的要将文件分批导出原创 2017-08-07 13:48:38 · 631 阅读 · 0 评论 -
mysql group_concat( 读取出来的数据长度限制
MySQL提供的group_concat函数可以拼接某个字段值成字符串,如 select group_concat(user_name) from sys_user,默认的分隔符是 逗号,即"," ,如果需要自定义分隔符可以使用 SEPARATOR如:select group_concat(user_name SEPARATOR '_') from sys_user但是如果 us原创 2017-12-18 16:54:18 · 780 阅读 · 0 评论 -
php 生成器语法
首先生成器是实现了迭代器接口的类,所以叫做迭代生成器Generator:生成器Iterator: 迭代器GeneratorimplementsIterator{/* 方法 */publiccurrent(void) :mixedpublickey(void) :mixedpublicnext(void) :voidpublic...原创 2017-12-20 09:53:06 · 261 阅读 · 0 评论 -
php 类型比较表
http://php.net/manual/zh/types.comparisons.php翻译 2017-10-31 14:20:38 · 377 阅读 · 0 评论