![](https://img-blog.csdnimg.cn/20201014180756925.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
PHP
文章平均质量分 88
日积月累的质变
这个作者很懒,什么都没留下…
展开
-
php中抽象类和接口的区别
概念面向对象的三大概念:封装,继承,多态 ;把属性和方法封装起来就是类。 一个类的属性和方法被另外的类复制就是继承,PHP里面的任何类都可以被继承,被继承的属性和方法都可以被子类重新定义,这就是多态性。 抽象类和抽象方法: 所谓抽象方法就是只有名字的空“函数”,而且抽象方法必须是空方法。 所谓抽象类就是包含抽象方法的类,同时抽象类也可以包含普通方法。 因为抽象方法必须是空方法,所以任何子类在继承抽象类的时候,都必须重新定义抽象方法的具体内涵,才能实现实例化。 接口: 只包含抽象方法的特殊抽象类。 换句话转载 2020-11-17 11:30:55 · 584 阅读 · 1 评论 -
常见的Nginx 502 Bad Gateway解决办法
常见的Nginx502BadGateway解决办法如下:Nginx502错误情况1:网站的访问量大,而php-cgi的进程数偏少。针对这种情况的502错误,只需增加php-cgi的进程数。具体就是修改/usr/local/php/etc/php-fpm.conf文件,将其中的max_children值适当增加。这个数据要依据你的VPS或独立服务器的配置进行设置。一般一个php-cgi进程占20M内存,你可以自己计算下,适量增多。/usr/local/php/sbin/php-fpm...原创 2020-11-17 11:24:30 · 15710 阅读 · 0 评论 -
为什么本地开发时使用CURL请求本地URL会卡死
^_^是在WIN下开发。配置是nignxphp mysql默认时启动phpcgi是D:\php \php-cgi.exe-b 127.0.0.1:9000 -c D:\phpfind\phpa\php.ini先看NGINX配置123456789 l原创 2017-08-17 13:39:50 · 10969 阅读 · 0 评论 -
解析php函数method_exists()与is_callable()的区别
php函数method_exists() 与is_callable()的区别在哪?在php面相对象设计过程中,往往我们需要在调用某一个方法是否属于某一个类的时候做出判断,常用的方法有 method_exists()和is_callable(),相比之下,is_callable()函数要高级一些,它接受字符串变量形式的方法名作为 第一个参数,如果类方法存在并且可以调用,则返回true。如果要检测类中转载 2017-07-04 15:03:41 · 188 阅读 · 0 评论 -
extends和implements区别
extends与implements的不同1、在类的声明中,通过关键字extends来创建一个类的子类。一个类通过关键字implements声明自己使用一个或者多个接口。 extends 是继承某个类, 继承之后可以使用父类的方法, 也可以重写父类的方法; implements 是实现多个接口, 接口的方法一般为空的, 必须重写才能使用 2、extend转载 2017-07-04 14:08:10 · 258 阅读 · 0 评论 -
什么是CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI
什么是CGI CGI全称是“公共网关接口”(Common Gateway Interface),HTTP服务器与你的或其它机器上的程序进行“交谈”的一种工具,其程序须运行在网络服务器上。 CGI可以用任何一种语言编写,只要这种语言具有标准输入、输出和环境变量。如PHP,perl,tcl等 什么是FastCGI FastCGI像是一个常转载 2017-07-03 19:22:59 · 200 阅读 · 0 评论 -
php配置php-fpm启动参数及配置详解
约定几个目录/usr/local/php/sbin/php-fpm/usr/local/php/etc/php-fpm.conf/usr/local/php/etc/php.ini一,php-fpm的启动参数复制代码代码如下:#测试php-fpm配置/usr/local/php/sbin/php-fpm -t/usr/local/php/sbin转载 2017-07-03 11:04:52 · 489 阅读 · 0 评论 -
使用JQuery动态创建元素并插入到合适的位置
在编写页面列表时,有个动态添加元素的需求,需要按照元素的某个属性排序,如果当前元素存在,则直接修改用于标示个数的属性,否则需要按照元素的一个属性查找到合适的位置,新建元素并插入。具体代码如下:Js代码 function updateHTMLInfor(jsonObj,divId,allDivId){ if(jsonObj.dataId!=null转载 2017-04-26 10:42:38 · 1482 阅读 · 0 评论 -
原生和jQuery的ajax用法
form数据的序列化:$('#submit').click(function(){ $('#form').serialize(); //会根据input里面的name,把数据序列化成字符串;eg:name=yang $('#form').serializeArray(); //会根据input里面的name,把数据序列化成数组;eg:[object]转载 2017-04-26 10:41:47 · 230 阅读 · 0 评论 -
Laravel一次更新多条记录,批量更新的方法
在我们实际应用中,免不了这样的情况——例如我们同时录入多条信息,可能三条五条还好说,但量一旦变大,就会增加读写数据库的次数,会降低效率,那么,我们该如何实现,做到一次读写数据库,批量更新呢?例如这种情况:HTML代码:[html] view plain copy print?> html lang="en"> head转载 2017-04-06 18:48:54 · 12022 阅读 · 2 评论 -
laravel如何输出最后一条执行的SQL
在使用Laravel框架的时候,调试的时候,需要将查询的SQL输出校验,这是需要将SQL打印出来,[html] view plain copy \DB::connection()->enableQueryLog(); // 开启查询日志 \DB::table('xxx'); // 要查看的sql $queries转载 2017-04-05 16:02:12 · 7636 阅读 · 0 评论 -
小谈php处理 大并发 大流量 大存储
一、判断大型网站的标准:1.pv(page views)网页的浏览量:概念:一个网站所有的页面,在24小时内被访问的总的次数。千万级别,百万级别,2、uv值(unique vistor)独立访客概念:一个网站,在24小时内,有多少个用户来访问我们的网站。达到10万3、独立ip,重点内容概念:一个网站,在24小时内,有多少个ip来访问我们的网站。转载 2017-06-14 19:07:13 · 211 阅读 · 0 评论 -
PHP中self和this的用法区别
PHP支持类和面向对象结构,PHP的类的静态函数和变量不与任何特定类的实例相关联(换句话说,一个对象)。请看:类与对象的区别。相反,静态函数和变量与类定义本身相关联。换言之,一个类的所有实例都共享相同的静态变量。在一个类的方法(函数)的上下文中,静态变量和函数被访问使用self::,在一个类的对象(实例)的上下文中使用其他方法和变量时用this。比较表转载 2017-07-06 14:36:03 · 420 阅读 · 0 评论 -
PHP对象在内存中的分配
对像在PHP 里面和整型、浮点型一样,也是一种数据类,都是存储不同类型数据用的, 在运行的时候都要加载到内存中去用,那么对象在内存里面是怎么体现的呢?内存从逻辑上 说大体上是分为4 段,栈空间段、堆空间段、代码段、初始化静态段,程序里面不同的声明 放在不同的内存段里面,数据段(data segment)通常是指用来存放程序中已初始化且不为0的全局变量如:静态变量和常量;代码段(code seg转载 2017-11-22 09:02:47 · 227 阅读 · 0 评论 -
深入理解Session和Cookie机制
1. session概念2. http协议与状态保持3. 理解cookie4. php中session的生成机制5. php中session的过期回收机制6. php中session的客户端存储机制1. session概念在web服务器蓬勃发展的时代,session在web开发语境下的语义是指一类用来在客户端与服务器之间保持状态的解决转载 2017-11-06 15:53:52 · 376 阅读 · 0 评论 -
【总结】PHP常见面试题汇总(二)
[php] view plain copy print?//第51题:统计一维数组中所有值出现的次数?返回一个数组,其元素的键名是原数组的值;键值是该值在原数组中出现的次数 $array=array(4,5,1,2,3,1,2,"a","a"); $ac=array_count_values($array); /** * 输出转载 2017-09-11 18:12:31 · 308 阅读 · 0 评论 -
【总结】PHP常见面试题汇总(四)
目录:1、如何使用php导入导出csv?2、php接收POST数据的方式有哪些?3、如何让json_encode()不转义斜杠?我在做服务器返回一些数据时需要返回一些地址,但是默认的json_code是会对 / 转义成 \/ 的4、新浪微博、QQ空间、今日头条PC版、蘑菇街、美丽说等网站是如何实现滚屏加载的?即:无刷新动态加载数据技术的应用5、移动浏览器的判断方法(通用)6转载 2017-09-11 18:15:06 · 522 阅读 · 0 评论 -
【总结】PHP常见面试题汇总(三)
目录:1、php如何在文章列表中任意位置或固定位置插入新的文章?比如:3、6位置2、php如何删除两个数组中有交集的元素?3、php如何在数组头部和尾部及任意位置插入元素?4、php如何将二位数组按某一个或多个字段值(升序/降序)排序?数字索引被重置,关联索引保持不变5、php如何实现APP版本号的比对?6、php如何获取视频封面图?7、php中的六种加密解密算法8转载 2017-09-11 18:13:40 · 328 阅读 · 0 评论 -
【总结】PHP常见面试题汇总(一)
[php] view plain copy print?/** * 第1题:用PHP打印出上周的时间格式,如:"2015-01-22 14:42:09" */ echo date("Y-m-d H:i:s",strtotime("-1 day")).""; [php] view plain copy转载 2017-09-11 18:10:44 · 2813 阅读 · 0 评论 -
深入理解require与require_once与include以及include_once的区别
利用PHP的Include files维护你的网站 不管你所开发的网站的规模是大是小,你都应该要认识到重复使用程序代码的重要性,不论你重复使用的是 PHP 程序或者是 HTML 原始码。举个例子来说,网站页尾的版权宣告至少每年都得修改一次,如果你的网站有许多个页面,该怎么办呢?动手一个一个修改这些页面肯定是一件头痛的事情。通过 PHP 我们可以用几个不同的方式来重复使用程序代码。要使用哪些函数转载 2017-09-01 11:10:13 · 226 阅读 · 0 评论 -
PHP获得真实客户端的真实IP REMOTE_ADDR,HTTP_CLIENT_IP,HTTP_X_FORWARDED_FOR
REMOTE_ADDR 是你的客户端跟你的服务器“握手”时候的IP。如果使用了“匿名代理”,REMOTE_ADDR将显示代理服务器的IP。 HTTP_CLIENT_IP 是代理服务器发送的HTTP头。如果是“超级匿名代理”,则返回none值。同样,REMOTE_ADDR也会被替换为这个代理服务器的IP。$_SERVER['REMOTE_ADDR']; //访问端(有可能是用户,有可能是代理原创 2017-09-18 15:28:30 · 403 阅读 · 0 评论 -
MAC-brew安装 php7 nginx mysql
环境 MAC OSX 10.11.5 EI CAPITAN准备安装LNMP由于OSX10.11 开启了Integrity Security 系统文件不能随便删除(非要关掉这个功能的话可以查看相关文章)所以我这里就不删除系统自带的apache和php5.5了。1.安装nginxbrew install nginx安装完后,先不急着修改配置文转载 2017-03-25 09:36:48 · 3468 阅读 · 0 评论 -
MAC使用php7搭建LNMP环境
1、安装MySQL:查看MySQL可用版本信息:brew info mysql11我这边看到的版本是5.7.10:mysql: stable 5.7.10 (bottled)11接下来安装MySQL5.7.10:brew install mysql11安装完成之后按照提示将plist文件放入~/Library/LaunchAgents/中并load,设定转载 2017-03-25 09:34:52 · 444 阅读 · 0 评论 -
PHPExcel在高版本PHP7中,Writer->save出现ERR_INVALID_RESPONSE错误的解决方法
这个Writer->save错误可能由于很多原因导致,其中有一部分是因为header和缓冲区的错误导致的这部分具体讨论可以看这里http://stackoverflow.com/questions/8566196/phpexcel-to-download 然而还有一个不容易发现的问题,在高版本PHP7下,出现ERR_INVALID_RESPONSE的错误还可能由于下面的原因导致原创 2017-03-24 10:49:35 · 27489 阅读 · 1 评论 -
PHP array_multisort—对多个数组或多维数组进行排序
PHP中array_multisort可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序。 关联(string)键名保持不变,但数字键名会被重新索引。 输入数组被当成一个表的列并以行来排序——这类似于 SQL 的 ORDER BY 子句的功能。第一个数组是要排序的主要数组。数组中的行(值)比较为相同的话就按照下一个输入数组中相应值的大小来排序,依此类推。——这句话是理解转载 2016-08-23 15:06:58 · 243 阅读 · 1 评论 -
PHP运算符-算术运算符、三元运算符、逻辑运算符
运算符是用来对变量、常量或数据进行计算的符号,它对一个值或一组值执行一个指定的操作。PHP的运算符包括算术运算符、字符串运算符、赋值运算符、位运算符、逻辑运算符、比较运算符、递增或递减运算符、错误控制运算符,这里只介绍一些常用的运算符。 算术运算(ArithmeticOperators)符号是处理四则运算的符号。在数字的处理中应用得最多。常用的算术运算符如下表所示。关于上表说明:转载 2016-07-19 17:49:23 · 555 阅读 · 0 评论 -
php中几个字符串替换函数详解
在php中字符替换函数有几个如有:str_replace、substr_replace、preg_replace、preg_split、str_split等函数,下面我来给大家总结介绍介绍。 一、str_replace(find,replace,string,count)作用:str_replace() 函数使用一个字符串替换字符串中的另一些字符。参数 描述find 必需。规定要查转载 2016-07-13 15:56:57 · 254 阅读 · 0 评论 -
php中json_decode()和json_encode()的使用方法
1.json_decode() json_decode (PHP 5 >= 5.2.0, PECL json >= 1.2.0) json_decode — 对 JSON 格式的字符串进行编码 说明 mixed json_decode ( string $json [, bool $assoc ] ) 接受一个 JSON 格式的字符串并且把它转换为 PHP 变量转载 2016-07-13 15:55:37 · 201 阅读 · 0 评论 -
php远程抓取网站图片并保存
/** * 一个用于抓取图片的类 * * @package default * @author WuJunwei */ class download_image { public $save_path; //抓取图片的保存地址 //抓取图片的大小限制(单位:字节) 只抓比size比这个限制大的图片 p转载 2016-05-29 01:07:58 · 467 阅读 · 0 评论 -
PHP CURL CURLOPT参数说明(curl_setopt)
CURLOPT_RETURNTRANSFER 选项:curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);如果成功只将结果返回,不自动输出任何内容。如果失败返回FALSEcurl_setopt($ch, CURLOPT_RETURNTRANSFER,0); 或着不使用这个选项:如果成功只返回TRUE,自动输出返回的内容。如果失败返回FALSE转载 2016-05-29 01:05:03 · 3346 阅读 · 0 评论 -
最全防止sql注入方法
(1)mysql_real_escape_string -- 转义 SQL 语句中使用的字符串中的特殊字符,并考虑到连接的当前字符集 使用方法如下:$sql = "select count(*) as ctr from users where username='".mysql_real_escape_string($username)."' and password='". mysq转载 2016-05-29 01:00:03 · 536 阅读 · 0 评论 -
php通过$_SERVER['HTTP_USER_AGENT']获取浏览器相关参数
//获取浏览器function getBrowse(){ global $_SERVER; $Agent = $_SERVER['HTTP_USER_AGENT']; $browseinfo=''; if(ereg('Mozilla', $Agent) && !ereg('MSIE', $Agent)){ $browseinfo =转载 2016-05-29 00:55:07 · 7499 阅读 · 0 评论 -
PHP 操作 Excel PHPExcel 详解
headerheader("Content-Type:application/vnd.ms-excel");header("Content-Disposition:attachment;filename=sample.xls");header("Pragma:no-cache");header("Expires:0");2.PHPExcelhttp://www.codeple转载 2016-05-28 18:40:13 · 501 阅读 · 0 评论 -
phpexcel来做表格导出(多个工作sheet)及设置单元格格式
php/** * 简单实用Execl */ set_include_path('.'.get_include_path().PATH_SEPARATOR.dirname(__FILE__).'/PHPExecl/');/* @func 引入类 */require 'PHPExcel.php'; //模拟数据$mulit_arr = ar原创 2016-11-03 12:17:01 · 5538 阅读 · 0 评论 -
基于laravel5.2的开源cms系统Lava Lite安装步骤
系统环境要求PHP >= 5.5.9OpenSSL PHP ExtensionPDO PHP ExtensionMbstring PHP ExtensionTokenizer PHP Extension1234512345以上的Lava Lite官方提示的环境要求 我在安装的过程中,即便是满足了以上要求,还出现了一个类似于下面的错误,最终排查,是php_fileinfo未开启导转载 2016-11-03 18:13:55 · 1723 阅读 · 0 评论 -
Discuz! X cookie的设置与使用详解
Discuz!X cookie生成文件位置 source\function\function_core.phpDiscuz!X cookie封装源码 生成COOKIEfunction dsetcookie($var, $value = '', $life = 0, $prefix = 1, $httponly = false) {转载 2017-03-20 09:37:51 · 2747 阅读 · 0 评论 -
discuz论坛登陆信息外部调用的几种方法
方法1:discuz登陆框是ajax调用的,一开始在firebug下看到了调用了接口:http://home.ecjtu.net/member.php?mod=logging&action=login&infloat=yes&handlekey=login&inajax=1&ajaxtarget=fwin_content_login1http://h转载 2017-03-20 09:35:55 · 8415 阅读 · 0 评论 -
微信网页授权(OAuth2.0) PHP 源码简单实现
提要: 1. 建议对OAuth2.0协议做一个学习。 2. 微信官方文档和微信官网工具要得到充分利用。 比较简单,直接帖源代码了。其中“xxxxxxxxxx”部分,是需要依据自己环境做替换的/*** OAuth2.0微信授权登录实现** @author zzy* @文件名:GetWxUserInfo.php*/// 回调地址$url = ur转载 2017-02-13 17:01:21 · 1209 阅读 · 0 评论 -
discuz社区与java web的钉钉手机版整合(二)
上一篇讲到如何绕开discuz的登录验证,使得在url传一个username的账号就可以自动登录。这篇主要讲的是钉钉的免登陆,由于官方网都有所以,一开始的在钉钉增加添加微应用这个就省略了。这里有一个前提:即本来的系统(我公司的是erp系统)已经与钉钉整合了,即钉钉已经可以获取erp系统当前的登录账号。至于怎样弄,先忽略。现在假设登录钉钉后就能通过钉钉接口获取登录账号,discuz属转载 2017-02-10 13:21:53 · 715 阅读 · 1 评论 -
discuz社区与java web的钉钉手机版整合(一)
在前面的博文中,我已经完成了discuz与java web在浏览器上的整合,大概原理是利用ucernter作为中介,在java web中登录时,调用uc_user_login()登录,这时候就会返回一段js代码把cookie写在浏览器中,使得两个系统公用相同的cookie以达到同步登录的目的。我们都知道,很多公司都用使用阿里的钉钉作为办公通讯工具。那么这篇将介绍如何使用融合discuz,j转载 2017-02-10 13:20:49 · 1601 阅读 · 0 评论