PHP
文章平均质量分 95
我爱默小兜
热爱编程,热爱生活
展开
-
PHP5 中魔术 方法 函数
__sleep() 就表示当你执行serialize()这个序列化函数之前时的事情,就像一个回调函数,所以在这个回调函数里面我们就可以做点事情,来加密我们的某些参数值,防止序列化后,别人容易读懂。__wakeup() 和__sleep()大同小异,只不过是反序列化之前进行的回调函数,可以用来解密我们加密的一些函数__toString 将类转化为字符串之前调用的函数原创 2016-04-06 14:53:07 · 765 阅读 · 0 评论 -
session多服务器共享的方案梳理
session的存储了解以前是怎么做的,搞清楚了来龙去脉,才会明白进行共享背后的思想和出发点。我喜欢按照这样的方式来问(或者去搞清楚):为什么要session要进行共享,不共享会什么问题呢?以前业界使用session的做法: 默认情况下,php的session文件是保存在磁盘文件中。在php.ini配置文件中的配置项如下: session.save_hand转载 2016-04-19 10:05:58 · 830 阅读 · 0 评论 -
php中代码开始标志类型(<?php ?>,<? ?>,<?= ?>,<% %>,<%= %>)
今天在看别人的php代码时候,发现<?php$a='test';?><?=$a?>结果还真的输出了’test’ 于是我将代码改成如下:<?php $a='test';?><?echo $a ?>结构什么也没有,于是我更加好奇。开始查找资料之类。。。 网上资料: <? ?>是短标签,<?php ?>是长标签,端标签一般很少用,指令 <?= ,它和 <? echo是等价的原创 2016-04-19 22:08:29 · 8288 阅读 · 2 评论 -
正则表达式中多行匹配问题
正则表达式中多行匹配问题。不同的系统中换行字符是不一样的,如linux/Unix中是\n,win中是\n\r,那么正则表达式模式修正符m,匹配的时候就需要考虑这个问题。原创 2016-04-21 15:45:55 · 26078 阅读 · 0 评论 -
PHP $_SERVER参数详解
$_SERVER['HTTP_ACCEPT_LANGUAGE']//浏览器语言 $_SERVER['REMOTE_ADDR'] //当前用户 IP 。 $_SERVER['REMOTE_HOST'] //当前用户主机名 $_SERVER['REQUEST_URI'] //URL$_SERVER['REMOTE_PORT'] //端口。 $_SERVER['SERVER_NA原创 2016-05-19 20:39:12 · 718 阅读 · 0 评论 -
图解Zend studio破解方法及步骤
安装好zendstudio后,发现出现如下界面,需要激活,于是总结了一下激活方式,以备后需。 激活需要两个文件 下载路径如下 激活步骤: 1.将com.zend.php.core_10.6.1.v20140329-2132.jar放在zend安装目录下的plugins中,覆盖原来的文件。 2.重新打开zendstudio,复制里面的密钥码,粘贴到key的输入框即可。 激活成果后界面如原创 2016-05-19 11:13:14 · 1186 阅读 · 0 评论 -
DeDeCMS二次开发教程之程序安装
最近因项目需要用到dedecms,于是决定好好研究一下DeDecms。并记录下来,必备后续。下载从官方网站下载 http://www.dedecms.com/products/dedecms/downloads/ 下载后解压,包含docs和uploads文件夹,docs文件夹不需要管理,里面主要是版权申明和更新说明等。我们开发主要是了解uploads下内容,其内部结构如下: 程序安装项目入口文原创 2016-05-19 21:57:21 · 3427 阅读 · 0 评论 -
PHP的error_reporting错误级别变量对照表
PHP的error_reporting错误级别变量对照表原创 2016-05-21 14:02:10 · 657 阅读 · 0 评论 -
Thinkphp3.2中解决插入相同数据的问题
解决插入相同数据的问题;ON DUPLICATE KEY UPDATE;`REPLACE INTO `;`ON DUPLICATE KEY UPDATE`与`REPLACE INTO `区别;Thinkphp3.2中解决插入相同数据问题;原创 2016-06-03 15:16:54 · 8262 阅读 · 1 评论 -
判断与比较PHP的版本
判断与比较PHP的版本原创 2016-05-21 14:31:04 · 3319 阅读 · 0 评论 -
Linux下源码安装php7.0.6
php7.0.6的安装图解;配置Nginx与php连接;原创 2016-05-13 16:23:09 · 4289 阅读 · 0 评论 -
LAMP环境的搭建
LAMP环境搭建还是相对简单的,首先得将apache、Mysql、php下载下来,如下图 apache安装步骤1.configure 安装时候指定安装目录/user/local/apache 2.make 3.make install 安装好后,界面文件结构如下 使用bin/apachectl restart启动apache 然后地址栏输入ip测试,提示It works!代表安装成原创 2016-05-25 21:00:39 · 802 阅读 · 0 评论 -
正则表达式之零宽断言详解
什么是零宽断言;正向先行断言;反向先行断言;正向后发断言;反向后发断言;原创 2016-04-28 11:16:45 · 10575 阅读 · 3 评论 -
PHP中json中文乱码问题解决
//1.将数组、对象转为json格式(数组、对象都不包含中午)$arr=array('a'=>'a','b'=>'b'); //string '{"a":"a","b":"b"}' (length=17)var_dump(json_encode($arr));class Person{private $money=0;public $name=null;protected原创 2015-12-07 15:33:23 · 1847 阅读 · 0 评论 -
PHP中时间详解
date_default_timezone_set('Asia/Shanghai'); //设置时区一、格式化时间函数date ,返回string @params String date(string $param1,int $time)1.date函数 (对比printf、sprintf 函数)date('时间格式'[,'时间戳']); date('Y-m原创 2016-04-06 14:55:38 · 1018 阅读 · 0 评论 -
php中时间使用总结
date_default_timezone_set(‘Asia/Shanghai’); //设置时区一、格式化时间函数date ,返回string @params String date(string param1,intparam1,int time)1.date函数 (对比printf、sprintf 函数) date(‘时间格式’[,’时间戳’]); date(‘Y-m-原创 2015-11-04 17:26:30 · 600 阅读 · 0 评论 -
PHP时间处理
date_default_timezone_set(‘Asia/Shanghai’); //设置时区一、格式化时间函数date ,返回string @params String date(string param1,intparam1,int time)1.date函数 (对比printf、sprintf 函数) date(‘时间格式’[,’时间戳’]); date(‘Y-m-原创 2015-11-05 15:18:33 · 734 阅读 · 0 评论 -
DedeCms如何生成栏目以及静态的html文件
版本信息:V5.7SP1正式版(utf-8) 为了便于分析,首先删除了所有栏目对应的文件夹以及静态文件。通过分析,可以得出点击开始更新后,页面调用了 makehtml_all.php文件(更新选项选择的是更新所有)。为了便于查看传递到makehtml_all.php中的参数,在该文件最上面添加如下代码:trace($_REQUEST,false);trace($_POST);trace方法是为了原创 2016-05-24 11:23:03 · 8167 阅读 · 0 评论 -
图解SVN服务器搭建和在Zend Studio中使用
svn服务器安装;svn服务器配置(创建用户、添加库资源、配置ip等);zend Studio中安装SVN插件;将项目共享到svn上等原创 2016-05-24 14:20:39 · 2253 阅读 · 0 评论 -
php连接MongoDB数据库及CRUD操作详解
在php中配置MonogoDB数据库;php连接mongoDB数据库;php对MongoDB数据的增删改查操作等原创 2016-04-30 21:13:00 · 11855 阅读 · 1 评论 -
Memcache安装与入门
Memcache安装;通过Telnet对Memcache数据进行增删改查;Memcache在php中的配置;通过php对Memcache数据进行增删改查等原创 2016-05-01 11:40:17 · 10514 阅读 · 1 评论 -
PHP中获取函数调用时实际传递的参数信息
PHP中获取函数调用时候实际传递的参数信息原创 2016-05-21 15:00:15 · 5252 阅读 · 0 评论 -
DeDeCMS二次开发教程之静态页面生成流程
静态页面的生成index.php文件在index.php中一旦get传递一个upcache变量或者是文件index.html不存在时候,就开发生成静态文件。 然后执行如下代码: require_once (dirname(__FILE__) . "/include/common.inc.php"); require_once DEDEINC."/arc.partview.class.原创 2016-05-21 17:57:22 · 4452 阅读 · 2 评论 -
PHP.ini中session设置
Session设置与Cookie设置<?php1. session.name=名字 //默认session名为PHPSESSID2. session.use_trans_sid //默认为0 对每个URL启用session名=SID,不建议开启,存在安全问题3. session.save_path //session默认的保存地址session垃圾回收机制相关配置:5. ses原创 2016-05-21 15:51:44 · 1867 阅读 · 0 评论 -
php读取目录及子目录下所有文件名的方法
为了便于操作,先将php读取目录及子目录下所有文件名的方法封装成一个类。// +----------------------------------------------------------------------// | lidequan [ I CAN DO IT JUST WORK HARD ]// +-----------------------------------------原创 2016-08-13 17:39:27 · 11047 阅读 · 0 评论 -
php中strpos(), stripos(),strrpos(), strripos()的区别
作用:1.判断某个字符串在另一个字符串中的位置2.判断某个字符串是否包含一个字符串strpos($str,$char), 左边开始,符出现的位置,区分大小写;stripos($str,$char), 左边开始,字符出现的位置,不区分大小写;strrpos($str,$char) 右边开始,字符出现的位置,区分大小写;st原创 2016-08-14 19:49:33 · 11195 阅读 · 0 评论 -
通过位运算实现两个整数加、减、乘、除以及两个变量的交换
通过位运算实现两个数加、减、乘、除、两个变量的交换原创 2016-04-17 21:23:46 · 1848 阅读 · 0 评论 -
Thinkphp调用ajaxReturn中文乱码解决办法
Thinkphp调用ajaxReturn中文乱码之所以出现中文乱码,是因为Thinkphp在对数据进行转换的时候,直接使用json_encode函数。此时,我们就需要了解一下json_encode函数,该该函数会将中文转为Unicode编码,这样就会出现乱码。解决办法如下:打开Thinkphp中Controller.class.php文件。找到ajaxReturn方法,大概在文件的209行原创 2016-03-06 10:56:13 · 5891 阅读 · 2 评论 -
从数据结构角度分析foreach效率比for循环高的原因
在PHP开发过程中,我们都知道在循环的时候,foreach效率比for高,但是为什么foreach效率高呢?其实这是跟PHP变量的数据结构有关。typedef struct _zval_struct zval; struct _zval_struct { /* Variable information */ zvalue_value value; /*原创 2016-10-11 21:39:22 · 1676 阅读 · 0 评论 -
插入排序,希尔排序,选择排序、快速排序详解以及消耗存储比较
插入排序,希尔排序,选择排序详解以及消耗存储比较$arr=array(2,8,4,6,7,1,9,20,13); //待排序的数组//插入排序//从小到大/*思路2,7,4,1从第二个元素开始1.比较7与2,因为7>2,故不移动位置 2,7,4,12.比较4与7,因为4<7,故将第二个元素移动第三个元素的位置(向后移动一位) 2,7,7,13.比较4与...原创 2016-03-27 19:57:11 · 914 阅读 · 0 评论 -
图解Linux下源码安装PHP7.0.9 +Nginx
上一次,在《Linux下源码安装php7.0.6》,安装过PHP7.0.3,本文将图解安装PHP7.0.9过程。测试环境Linux 2.6.32-279.el6.i686 nginx-1.9.15.tar http://nginx.org/download/nginx-1.9.15.tar.gz php-7.0.9.tar.gz http://am1.php.net/distributions原创 2016-08-16 10:29:26 · 4215 阅读 · 0 评论 -
通过composer安装Yii2
1.composer的安装2.通过composer安装Yii2原创 2017-02-06 13:17:54 · 1563 阅读 · 0 评论 -
PHP的ZMQ扩展zeromq源码安装
具体安装步骤下载以及安装zmq我下载的是4.12版本 解压后,安装三部曲./configure --prefix=/usr/locla/zmq4.2.1makemake install绑定php参考:http://zeromq.org/bindings:php 我采用的是通过Building from Github来进行绑定。 首先下载 git clone git://github.原创 2017-08-02 13:08:18 · 2462 阅读 · 0 评论 -
php函数method_exists()与is_callable()的区别
在编程中,我们有的时候需要判断某个类中是否包含某个方法,除了使用反射机制,PHP还提供了method_exists()和is_callable()方法进行判断。那么两则区别是什么呢?已知类文件如下:class Student{ private $alias=null; private $name=''; public function __construct($name){原创 2016-08-10 17:27:54 · 3885 阅读 · 0 评论 -
命令行运行PHP以及解决 Deprecated: Comments starting with '#' are deprecated
配置环境变量;解决运行中问题;获取标准输入流中的数据原创 2016-09-12 11:00:43 · 3424 阅读 · 0 评论 -
基于ThinkPHP日历
开发环境介绍最新,闲来没事,便开发了一款简单的日历,来统计工作情况。为了开发便捷,使用ThinkPHP架构。界面如下图 备注:每页包含上一个月,当前月,下一个月的日期,并用不同的颜色区分,如果某天工作了,便圈出来。 主要是以下两个文件重要文件描述功能文件 CalenDar.class.php主要负责,获取日历详细信息的,不涉及用户数据操作。 代码如下:<?phpnamespace Ut原创 2016-06-08 18:03:14 · 3815 阅读 · 0 评论 -
session原理总结
一、session是怎么保存的?怎么去查看其内容?session是以文件的形式保存的。php.ini中有个配置项--session.save_path= "";这个里面填写的路径,将会使session文件保存在该路径下。session文件的命名格式是:"sess_[PHPSESSID的值]"。每一个文件,里面保存了一个会话的数据。其实只要使用代码$_SESSION['user_id'] =转载 2016-04-19 09:53:32 · 1789 阅读 · 0 评论 -
仿CSND实现网页中程序代码高亮显示
通过SyntaxHighlighter实现网页中程序代码高亮显示;将SyntaxHighlighter 整合到OneThink中的kindeditor中等原创 2016-07-12 21:28:54 · 4954 阅读 · 2 评论 -
阳历转换成阴历PHP实现详解
农历与阴历相关概念;阳历转换成阴历总体思路;怎样计算某一年的生肖;怎样计算天干地支;具体的程序实现;农历十六进制数据解析;为什么选择阳历1900.1.31作为参考点;怎样计算农历y年有多少天;PHP 32位怎样解决时间戳范围的限制问题...原创 2016-06-20 17:52:28 · 8831 阅读 · 6 评论 -
图解win7下局域网内SVN服务器搭建
设置局域网内网络配置,由之前的自由分配IP,改为IP固定不变,图解win7下局域网内SVN服务器VisualSVN-Server搭建,配置(储位置以及网络、端口号的配置),用户以及组的创建等,SVN客户端TortoiseSVN安装。原创 2016-07-18 11:41:50 · 10989 阅读 · 0 评论