php
乐乐Java路漫漫
热衷于互联网JAVA开发,对新技术的探索孜孜不倦,对问题的研究废寝忘食,希望大家一起探索
展开
-
composer no matching package found.
composer 遇到这个no matching package found.xuyueyandeMacBook-Pro:lifecircle-payment-api xuleyan$ composer installLoading composer repositories with package informationUpdating dependencies (including r...原创 2018-09-20 11:36:16 · 2059 阅读 · 0 评论 -
laravel 加载自定义类文件
1.在composer.json中的autoload模块加入文件 2.执行composer dump-autoload原创 2017-09-11 15:05:20 · 859 阅读 · 0 评论 -
composer使用
;初始化composer init;生成一个composer.json的文件{ "name": "xly/test", "description": "test composer", "type": "library", "authors": [ { "name": "xuleyan", "emai原创 2017-08-22 21:57:28 · 369 阅读 · 0 评论 -
websocket开发(类QQ)客服小程序
websocket开发(类QQ)客服小程序原创 2017-09-06 10:47:56 · 1410 阅读 · 0 评论 -
php三种方式对二维数组进行花样排序
以下分别使用了冒泡排序,array_multisort, usort对二维数组进行排序<?php$array = [ 0 => ['name' => 'lele', 'score' => 77], 1 => ['name' => 'haha', 'score' => 100], 2 => ['name' => 'xly', 'score' => 67], 3 =>原创 2017-08-27 17:19:41 · 1231 阅读 · 0 评论 -
编写php自定义扩展
有两个理由需要自己编写PHP扩展。第一个理由是:PHP需要支持一项她还未支持的技术。这通常包括包裹一些现成的C函数库,以便提供PHP接口。例如,如果一个叫FooBase的数据库已推出市场,你需要建立一个PHP扩展帮助你从PHP里调用FooBase的C函数库。这个工作可能仅由一个人完成,然后被整个PHP社区共享(如果你愿意的话)。第二个不是很普遍的理由是:你需要从性能或功能的原因考虑来编写一些商业逻辑原创 2017-09-06 12:00:31 · 7767 阅读 · 0 评论 -
php的cgi.fix_pathinfo解析
fix_pathinfo是用来干嘛的呢?为CGI提供真正的PATH_INFO / PATH_TRANSLATED支持。 PHP的以前的行为是将PATH_TRANSLATED设置为SCRIPT_FILENAME,并且不要弄清PATH_INFO是什么。 有关PATH_INFO的更多信息,请参阅CGI规范。 将其设置为1将导致PHP CGI修复其路径以符合规范。 设置为零会导致PHP的行为像以前一样。 默原创 2017-09-11 17:08:44 · 13276 阅读 · 1 评论 -
lnmp环境下 加大php文件上传限制三步骤
加大php文件上传限制三步骤1.#修改nginx配置(可不修改)vim /usr/local/nginx/conf/nginx.confsudo /usr/local/nginx/sbin/nginx -tsudo /usr/local/nginx/sbin/nginx -s reload2.修改php location下的配置vim /usr/local/nginx/con原创 2017-05-25 07:43:35 · 2097 阅读 · 0 评论 -
php未加载php.ini
php.ini未被加载的情况下,将php.ini文件拷贝到phpinfo中Configuration File (php.ini) Path的对应路径才起作用原创 2018-02-07 20:21:21 · 1027 阅读 · 0 评论 -
php Restful api 示例
因此,必须有一种统一的机制,方便不同的前端设备与后端进行通信。这导致API构架的流行,甚至出现”API First”的设计思想。RESTful API是目前比较成熟的一套互联网应用程序的API设计理论restful api 格式如下:GET /zoos:列出所有动物园POST /zoos:新建一个动物园GET /zoos/ID:获取某个指定动物园的信息PUT /zoos/ID:更...原创 2018-04-12 15:42:49 · 4151 阅读 · 0 评论 -
多域名跨域请求 (Access-Control-Allow-Origin)
跨域请求多域名设置,根据不同域名的请求设置不同的Access-Control-Allow-Origin/** * @param $request * @param \Closure $next * @return mixed */ public function handle($request,\Closure $next) { ...原创 2018-05-22 18:01:16 · 2362 阅读 · 0 评论 -
避免商品超卖的4种方案
避免商品超卖的4中方案(以下是一些核心思路)第一种方案:在每次下订单前我们判断促销商品的数量够不够,不够不允许下订单,更改库存量时加上一个条件,只更改商品库存大于0的商品的库存,当时我们使用ab进行压力测试,当并发超过500,访问量超过2000时,还是会出现超卖现象。public function buyOne() { $shop = Shop::find(1); if (...原创 2018-08-02 18:20:55 · 16869 阅读 · 5 评论 -
thinkphp5框架启动解析
1.加载start.php// 定义应用目录define('APP_PATH', __DIR__ . '/../application/');// 加载框架引导文件require __DIR__ . '/../thinkphp/start.php';2.加载基础文件require __DIR__ . '/base.php';3.定义常量,加载loader类de...原创 2018-08-16 00:36:01 · 2027 阅读 · 0 评论 -
php 亿万数据脚本执行顺序
关于脚本执行顺序的总结:在数据量不大的情况下,我们对与顺序的执行可能不太在意,但是当数据量在千万级别以上的时候,脚本执行顺序就很重要了。下面这个脚本在calculateSellerAndNums这个方法中添加了sleep(1)这个方法,对于执行顺序有很大的影响。sleep会让下面的方法先执行查询。(有点新奇)(1)未添加了sleep方法,执行顺序如下日期\设备编号100010...原创 2018-09-30 00:48:48 · 515 阅读 · 0 评论 -
phper成长之路
程序员在很多人眼里是一个比较赚钱的职业,每年也有大量的人进入到这个行业,这些人有的是学计算机专业的,有的是培训出来的,但是无论哪种,很多人在工作了一两年以后选择了转行,其原因很简单,没有发展。并不是这个行业没有发展,而是自己在这个行业中因为没有一条正确的道路而没有办法发展。所以,今天我们php中文网就来带领大家一起梳理下php程序员的成长之路,也算的上是一个简版的php程序员职业规划。 本文按照目转载 2017-09-04 16:44:23 · 706 阅读 · 1 评论 -
phpmailer邮件发送
<?php/*** by www.phpddt.com*/header("content-type:text/html;charset=utf-8");ini_set("magic_quotes_runtime",0);require 'class.phpmailer.php';try { $to = "b1303110@163.com"; $from = "13031原创 2017-08-24 23:34:33 · 376 阅读 · 0 评论 -
php图片处理
图片处理的四个步骤1.打开图片2.操作图片3.输出图片4.销毁图片/** * Created by PhpStorm. * User: leyan * Date: 2016/6/10 * Time: 19:42 */require_once('image_interface.php');class image implements image_face{ v原创 2016-06-10 20:54:50 · 512 阅读 · 0 评论 -
heredoc的使用
Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术。但是现在的一些论坛程序,和部分文章系统,都巧妙的使用heredoc技术,来部分的实现了界面与代码的准分离,phpwind模板就是一个典型的例子。 如下<?php $name = '乐乐';print <<<EOT<html> <head> <meta http-equiv="原创 2016-06-05 21:59:09 · 372 阅读 · 0 评论 -
php代码生成器
<?php /*生成的文件实例class example{ protected $_id; public function getId() { return $this->_id; } public function setId($id) { $this->_id = $id; }}*/$fieldArr原创 2017-05-07 22:42:25 · 879 阅读 · 0 评论 -
页面渲染
public static function render(){ $html = ''; ob_start(); include PROJECT_PATH . 'test.phtml'; $html = ob_get_contents(); ob_end_clean(); return $html;}原创 2017-06-20 09:15:47 · 310 阅读 · 0 评论 -
快排法思路与代码
<?php//快排法//实现原理//1.在数组中取出一个数v//2.v独自成为一个数组1,将比v小的元素分成数组2,比v大的元素分成数组3//3.对数组2和数组3进行前两步操作//4.最后输出数组1,v,数组2//代码实现(有缺陷,递归时会变量覆盖)function quick_sort(&$array){ $v = array_pop($array); $bigAr原创 2017-07-11 21:46:18 · 508 阅读 · 0 评论 -
php源码安装
php源码安装1.更新源Wget http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpmrpm -ivh rpmforge-release-0.5.3-1.el6.rf.i686.rpmyum clean allyum list | grep php删除所有已安装的phpyum r原创 2016-05-28 14:11:04 · 467 阅读 · 0 评论 -
引用计数原则
$test = 2222222;$abc = &$test;unset($test);var_dump($abc);以上输出的值为2222222明明已经清除了这个变量,为什么它的引用变量仍旧能取到值呢。其实php变量存在于一个zval的变量容器中,有类型、值、是否引用(is_ref)和引用个数(refcount),只有到引用个数为0的情况下,包含类型和值的这个变量容器才会从内存中删除。ph原创 2017-07-08 15:43:17 · 875 阅读 · 1 评论 -
类似excel格式数据的数组处理
#id name passwd $str = '1 tom 123 2 jack 4565 absk 435345';$arr = explode("\n", $str);$result = [];$title = ['id', 'name', 'passwd'];foreach ($arr as $item) {原创 2017-07-09 15:57:43 · 294 阅读 · 0 评论 -
魔术方法小记
<?phpnamespace magic\sub;class magic{ const foo = 1; //被重载的数据放在此 private $data = []; private $_name = ''; //重载不能用在已定义的属性 // public $a = ''; public function __construct($name)原创 2017-07-10 14:12:08 · 272 阅读 · 0 评论 -
php多继承详解
自php5.4.0起,php实现了一种代码复用的方法称为trait. Trait是为类似php的单继承语言所准备的一种代码服用机制。Trait为了减少单继承语言的限制,使开发人员能够自由地在不同层次结构内独立的类复用method. Trait 和Class 组合的语义定义了一种减少复杂性的方式,避免传统的多继承和 Mixin 类相关典型问题。Trait 和 Class 相似,但仅仅旨在用细粒度和一原创 2017-07-19 14:56:01 · 1829 阅读 · 0 评论 -
static 和 self的区别
self - 就是这个类,是代码段里面的这个类。 static - PHP 5.3加进来的只得是当前这个类,有点像$this的意思,从堆内存中提取出来,访问的是当前实例化的那个类,那么 static 代表的就是那个类。class A { public function create1() { return new self(); } public f原创 2017-07-19 16:11:58 · 1622 阅读 · 0 评论 -
php的max_execution_time和php-fpm的request_terminate_timeout的详解
1.max_execution_time和request_terminate_timeout分别是php和php-fpm来控制脚本运行时间和单次请求所花费的时间最大值。2.php脚本代码本身运行(1)当max_execution_time = 10,request_terminate_timeout = 1运行脚本 $time = time(); echo 'begin';原创 2017-08-19 23:36:58 · 2195 阅读 · 0 评论 -
is not within the allowed path
File(/vagrant/php/old/index.php) is not within the allowed path(s): (/home/wwwroot/default/:/tmp/:/proc/)问题是出现在了php.INI上面了 原因是php.ini里设置了 open_basedir = /home/wwwroot/default/:/tmp/:/proc/:/vagrant/将原创 2017-08-14 23:06:46 · 23511 阅读 · 0 评论 -
无限分类小记
无限分类的概念无限分类就是一个分类下面可以创建多个子类,而其子类下面亦可创建不同子类,如此往复,没有终点递归无限分类原理每一个分类都需要记录他的父级id,当为顶级分类时,父级id为0。这样无论那个分类,都可以通过父级id一层层的去查明他所有的父级,一遍清楚地知道他所属何种分类,层级深度为几。require_once('db.inc.php');$db = new cls_mysql('127.0.原创 2016-06-10 12:46:48 · 292 阅读 · 0 评论