php
文章平均质量分 55
ym_diver
这个作者很懒,什么都没留下…
展开
-
isset()和empty()的区别
如果变量为0,则empty()会返回TRUE,isset()会返回TRUE;如果变量为空字符串,则empty()会返回TRUE,isset()会返回TRUE;如果变量未定义,则empty()会返回TRUE,isset()会返回FLASE;手册中对empty()的解释如下:描述bool empty( mixed var )如果 var 是非空或非零的值,则 empty转载 2017-04-07 18:19:08 · 293 阅读 · 0 评论 -
PHP后期静态绑定
从PHP5.3.3开始,PHP增加了一个叫做后期静态绑定的功能,用于在继承范围内引用静态调用的类。class A { public static function who() { echo __CLASS__; } public static function test() { self::who(); }}原创 2017-07-02 17:01:45 · 257 阅读 · 0 评论 -
define( )和defined( )函数的区别
PHP中define( )函数用来定义一个常量;而defined( )函数用来检验常量是否存在,存在则返回true;否则返回false.原创 2017-07-04 15:59:05 · 4278 阅读 · 0 评论 -
PHP的输出缓冲区
什么是缓冲区?简单而言,缓冲区的作用就是,把输入或者输出的内容先放进内存,而不显示或者读取.至于为什么要有缓冲区,这是一个很广泛的问题,如果有兴趣,可以在网山找下资料.其实缓冲区最本质的作用就是,协调高速CPU和相对缓慢的IO设备(磁盘等)的运作. PHP在执行的时候,在什么地方有用到缓冲区?想要了解PHP的缓冲区,就要知道执行PHP的时候,缓冲区被设置到了什么地方.转载 2017-06-13 20:28:45 · 597 阅读 · 0 评论 -
PHP常用的加密函数
昨天去面试,面试官问我知道那些常用的PHP加密函数,结果就只知道一个较老的md5(),今天特地来补充一下这方面的知识。1、单向散列加密md5(string $str,[bool $raw_output=false]):第一个参数为要加密的字符串,第二个参数为raw_output的布尔值,默认为false,如果设置为true,则md5()会返回原始的16位的二进制格式报文摘要。原创 2017-06-15 10:34:55 · 639 阅读 · 0 评论 -
CI框架中使用URI类segment方法获取url中的中文参数的问题
今天在更新博客时,突然发现,CI的URI类中的segment方法获取url中的中文参数时,会出现乱码,导致自己需要的数据无法取出。这是我URL的格式:http://ym.chappie.top/category/PHP深入对象学习笔记这是我使用$this->uri->segment(2)来获取url中的中文字符串字段,如果成功,这应该返回:PHP深入对象学习笔记然而我返回的却是:PHP原创 2017-07-08 22:31:35 · 2079 阅读 · 0 评论 -
jQuery踩坑
最近工作中很多地方都使用到了Jquery,把一些踩过的坑写下来1、jQuery全局变量的声明 全局变量的好处在于减少变量的个数,并可以在不同的函数中直接使用,在某些传值的时候很好用,但他的坏处在于占用内存较多,增加耦合性 全局变量有如下几种声明方式: 一、var + 变量名的方式在function外部声明,如果在函数内部用此方法声明的即为局部变量原创 2017-08-20 00:18:04 · 481 阅读 · 0 评论 -
利用ztree实现树搜索
最近工作中需要利用ztree实现树搜索功能,在网上看了一下别人的轮子觉得都有点不适合需求,所以根据自己的实际情况进行了改进,经过几次优化,觉得效果还能用: /*** 搜索功能3.0* @type {Element}*/var node = document.querySelector('#client_name');var cpLock = false;var原创 2017-09-24 20:39:06 · 3722 阅读 · 1 评论 -
《第六章:对象与设计》阅读笔记
这章最主要的就是几个面对对象的概念:1、职责:在面对对象代码中,客户端不需要考虑具体细节的实现,只要知道使用哪个接口能够完成功能即可。具体的细节实现由对象实现,而不是由客户端代码负责。2、内聚:内聚指的是一个模块内部各个成分之间互相关联的度量(如一个类将实现某个功能的相关方法集中起来,这些方法可以共享处理的数据,当改变其中一个方法中的数据时,这种改变可以很快反应到其余的方法中。而面对过程编原创 2017-09-17 23:36:52 · 198 阅读 · 0 评论 -
通过php-fpm status判断pm.max_childern的值应该设置为多少
在php-fpm设置时,我们可以通过php-fpm的status来设置合适的max_childern值。首先设置php-fpm :去掉pm.status_path = /status处的注释,路径随你自己配置然后配置nginxlocation/nginx_status { stub_status on; access_log off;原创 2017-11-29 22:56:25 · 2333 阅读 · 0 评论 -
利用bootstarp-table实现ajax分页表格
TP5分页很好用,但是样式比较简陋,最近发现了bootstarp-table用来做ajax分页表格挺好的,在这里把方法Mark一下。首先引入插件,这里不多说,然后就是html页面了,在HTML只需要简单的定义出一个table就即可//表单 订单号原创 2017-12-05 00:35:14 · 2169 阅读 · 0 评论 -
tp5中使用phpexcel生成表格
最近项目中需要使用使用phpexcel生成表格,但是在由网页导出excel时,文件的后缀总是会带上html。后来调试了半天发现,需要在header头输出之前使用ob_end_clean( )去清除php缓冲区中的内容。因为在herder头输出之前,php是不能有任何输出的,哪怕是一个空格,一旦有了输出,你设置的php header头就无效了,因为此时的header头信息早已经固定。原创 2017-12-17 12:14:21 · 1773 阅读 · 0 评论 -
PHP中的浅复制与深复制
在php中,对象间的赋值操作时间上是引用操作。比如class myclass{ public $data;}$obj1 = new myclass();$obj1->data = 1;$obj2 = $obj1;$obj2->data = 2;print_r($obj1->data); //输出2print_r($obj2->data); //输出2但是转载 2017-12-17 21:52:07 · 307 阅读 · 0 评论 -
php合并2个有序链表
输入两个单调递增的链表,输出两个链表合成后的链表,当然我们需要合成后的链表满足单调不减规则。先上代码:function Merge2($p1, $p2){ if($p1 == null){ return $p2; } if($p2 == null){ return $p1; } //取较小的为链表原创 2017-12-29 23:42:28 · 752 阅读 · 0 评论 -
PHP常用缓存技术的总结
1、全页面静态化缓存:将页面全部生成为HTML静态页面,用户访问时直接访问静态页面,不走PHP服务器的解析流程。此种方式在CMS系统中比较常见,如dedecms。实现方法:输出缓存ob_start()--打开“输出控制缓冲”;some code --要运行的代码;$content=ob_get_contents()--返回“输出缓冲区的内容”;some code --使用fil转载 2017-07-01 18:23:53 · 15822 阅读 · 1 评论 -
PHP四种基础排序算法--冒泡,直接插入,快速和选择排序
冒泡排序:重复的走访要排序的数列,一次比较2个元素,如果他们的顺序错误则交换过来,这样重复进行到没有需要再交换。该排序方法名称的由来指小(或者大的)的元素会经由交换慢慢的浮到数列的前端。function maopao(&$array){ $temp=array(); //第一层循环,控制需要冒泡的轮数 for($i=1,$len=cou原创 2017-06-18 09:42:35 · 990 阅读 · 0 评论 -
linux中为PHP安装redis扩展
最近有个地方需要用到redis,我在自己的虚拟机上早已安装好了redis,但却发现还没有为php安装redis扩展,导致无法用php使用redis。下面进入正题:我们直接在/usr/local/src目录下从github中下载phpreids源码包://进入目录cd /usr/local/src//下载源码包wget https://github.com/nicolas原创 2017-06-17 10:34:31 · 1608 阅读 · 0 评论 -
PHP函数参数传递
传递参数参数传递有两种方式,第一种是按值传递,第二种是引用传递,也就是地址传递。我举一个例子:(按值传递)function example($num){ $num+= 1; echo$num;}$num = 1;example($num);echo ‘函数外的$num:’.$num;?>原创 2017-04-07 18:16:52 · 757 阅读 · 0 评论 -
include,require,include_once,require_once
①inlcude与include_once(require与require_once)的区别:带有once 的函数是没有带once函数的加强,或者延伸。带有once的函数在引用文件的时候会先检查一下在这个php文件里你要引用的文件是不是已经被引用过了,如果已经引用过了,它不会再引用第二次。在include_once里,如果重复引用了文件,那么程序运行到此处的时候就会发生错误,因为一些东西你转载 2017-04-06 11:59:30 · 257 阅读 · 0 评论 -
php程序员解决问题的能力
转载至:http://www.sumiaowen.com/category/technology-share/29.html 这个话题老生长谈了,在面试中必然考核的能力中,我个人认为解决问题能力是排第一位的,比学习能力优先级更高。解决问题的能力既能看出程序员的思维能力,应变能力,探索能力等,又可以看出他的经验。如果解决问题能力不佳是无法通过面试的。这里举个例子,假如我执行了一个PH转载 2017-04-07 22:24:17 · 356 阅读 · 0 评论 -
PHP和JS设置Cookies与session
cookies与session的区别与联系:1、Cookies储存在客户端,而session储存在服务器端2、session是基于cookies而实现的,把SESSION_ID通过Cookie储存在客户端,每次请求时会将SESSION_ID加入HTTP中一起发送到客户端,从而寻找到该SESSION_ID所对应的用户的信息。3、如果客户端禁止使用Cookies的话,可以将SESSION_ID原创 2017-04-09 16:20:48 · 4924 阅读 · 0 评论 -
在centos 7中搭建lamp平台
1、Apache安装命令:systemctl instll httpd启动apache:systemctl start httpd.service将apache设置为开机自启动:systemctl enable httpd.service如果担心apache没有成功启动,可以使用命令:systemctl is-enabled httpd.service查看如果显示enable原创 2017-04-14 20:55:17 · 339 阅读 · 0 评论 -
PHP 全局变量 局部变量 静态变量 常量
全局变量:在函数外声明的变量都成为全局变量,作用域是整个PHP文件,但在自定义的函数内部不能使用,想在用户自定义的函数内部使用全局变量,必须用global关键字声明变量,或者使用全局数组$globals进行访问局部变量:在函数内部声明的变量,只能在函数内部使用。静态变量:一般在在函数内部声明的变量,在函数运行结束后,都会被注销,其储存的数据也还会被清除,但通过sta原创 2017-04-01 17:03:14 · 2396 阅读 · 0 评论 -
PHP的魔术方法
从PHP 5以后的版本,PHP中的类就可以使用魔术方法了。其规定以两个下划线(__)开头的方法都保留为魔术方法,所以建议大家函数名最好不用__开头,除非是为了重载已有的魔术方法。1、__get、__set这两个方法是为在类和他们的父类中没有声明的属性而设计的。__get( $property ) 当调用一个未定义的属性时,此方法会被触发,传递的参数是被访问的属性名。__set( $原创 2017-04-01 16:47:02 · 331 阅读 · 0 评论 -
PHP static关键字
最近在写PHP无限极分类时,常常用到static关键字来定义属性和方法,所以特地从网上总结了一下static关键字使用要点:1、一般静态属性用来保存类的公用数据2、静态方法内部只能访问静态属性,包括本类和父类的3、在本类内部访问静态属性用self或static关键字访问,后面带上的变量要包括$,eg:self::$a或static::$a4、访问父类静态属性使用parent,eg:原创 2017-05-14 13:34:38 · 298 阅读 · 0 评论 -
PHP数组常用操作与常用排序函数
1、统计数组中元素个数:int count(mixed array [,int mode])--第二个参数值为COUNT_RECURSIVE(或1),使用本参数,本函数将会递归的对数组计数,对计算多维数组的所有单元尤其有用。此参数默认值为0.2、向数组末尾加入一个元素:(将数组当为一个栈)int array_push(array array,mixed var)--第一个参数原原创 2017-04-23 23:37:27 · 291 阅读 · 0 评论 -
HTML插入CSS文件的三种方式
1、外部样式表:当很多页面需要同一种样式时,可以用外部样式表的形式来插入CSS文件。2、内部样式表:适用与某个需要特殊样式的文档。css code....3、直接嵌入式:this is a paragraph当三种连接方式同时出现时,如果某个属性在不同的样式表中被同样的选择器定义那么,则先显示较近的样式表中的属性即直接原创 2017-05-06 12:56:17 · 3501 阅读 · 0 评论 -
PHP利用递归实现无极限分类
1原创 2017-05-06 13:06:26 · 370 阅读 · 0 评论 -
CI框架设定默认controller的问题
最近我在用CI写一个博客系统,博客首页的URL为:localhost/www.ymblog.com/Home/IndexHome/index我想将首页的controller直接设置为默认的controller。由于该控制器处于Home目录下,所以我首先是这么写的:结果很显然我输入localhost/www.ymblog.com或者localhost/www.ymblog原创 2017-05-16 20:59:31 · 1694 阅读 · 0 评论 -
在linux中为php安装mysqi扩展
今天我将CI框架转移到linux中,结果打开网页框架报错:Call to undefined function mysqli_init()。。。。一开始我以为是我CI配置哪出了问题,结果到最后我才发现是我linux中的lamp环境根本没有安装mysqli扩展。从图上可以看到,在/etc/php.d目录下根本没有pdo_mysqi.ini的扩展,所以我们只要用yum安装上这个扩展包就可以原创 2017-05-30 23:17:47 · 802 阅读 · 0 评论 -
JSON
JSON:JS对象表示法;和XML类似,用来存储和传输数据信息,但他比XML更小,更快,更易解析。JSON语法:JSON语法是Javascript语法的子集。具体语法规则:1、数据在名称/值对中:JSON数据的书写格式为:名称/值对。eg: "name" : "Tom",JSON的值可以为数字(整数和浮点数),字符串(双引号中),逻辑值(true或false),数组(方括号原创 2017-06-04 21:01:23 · 191 阅读 · 0 评论 -
php利用fscokopen()函数执行异步调用
<?php/** * php利用fscokopen()函数执行异步调用 * 参考鸟哥的:使用fscok实现异步调用PHP。http://www.laruence.com/2008/04/16/98.html */class asyncRequest{ /** * post 方式传参 * @param string $url 请求url * @para...原创 2018-04-19 23:53:08 · 858 阅读 · 0 评论