![](https://img-blog.csdnimg.cn/20201014180756916.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
php
从心所愿
既然选择了远方,就要风雨兼程,只为了给家人一个更好的生活!
展开
-
PHP中VC6、VC9、TS、NTS版本的区别与用法详解
1. VC6与VC9的区别: VC6版本是使用Visual Studio 6编译器编译的,如果你的PHP是用Apache来架设的,那你就选择VC6版本。 VC9版本是使用Visual Studio 2008编译器编译的,如果你的PHP是用IIS来架设的,那你就选择 VC9版本。 VC9版本是针对IIS服务器的版本,没有对APACHE的支持,而VC6版本对IIS和apache都提供转载 2015-11-05 19:57:55 · 528 阅读 · 0 评论 -
window wamp下xhprof的安装使用
在新的工作安排下来前赶紧把手上工作优化下,本来是靠xdebug+grindview来的,不过还是麻烦,就换上这个轻量级的性能测试了。网上搜的大多都是lamp环境下的,wamp下的倒是不多,而且不好用,于是整理了这篇教程。1.下载在这里 http://dev.freshsite.pl/php-extensions/xhprof.html 。我们为您提供以下文件的站内下载地址:xh转载 2015-11-05 20:00:04 · 525 阅读 · 0 评论 -
[转]FastCGI模式下PHP占用大量内存的解决办法
原文【https://guangxin.name/plink/tech/php/2010/344.html】很长一段时间以来,我注意到工作在FastCGI模式下的PHP会占用越来越多的内存,而且似乎从不释放。起初我以为这是内存泄漏的问题,但是各个PHP社区的人好像并没有把这个当作问题。我搜索了一下,发现还有不少人面临同样的问题。来自PHP官方的一个比较正式的解释是:php-cgi进程并没有内存转载 2015-11-05 16:35:04 · 4108 阅读 · 0 评论 -
【转】关于cgi、FastCGI、php-fpm、php-cgi
要知其所以 cgi、FastCGI、php-fpm、php-cgi大概的所以 还是要明晰的转自 知乎 的 一个回答 首先,CGI是干嘛的?CGI是为了保证web server传递过来的数据是标准格式的,方便CGI程序的编写者。web server(比如说nginx)只是内容的分发者。比如,如果请求/index.html,那么web server会去文件系统中找到这个转载 2015-11-05 16:27:25 · 361 阅读 · 0 评论 -
PHP - xhprof+Graphviz 安装配置
简介:XHProf是Facebook放出的轻量级调试工具。和Xdebug相比,XHProf更加易用和可控,尤其是生成流程图和调试数据对比的功能很好很强大。参考:http://us2.php.net/manual/zh/book.xhprof.php1. 安装XHProfsudo wget http://pecl.php.net/get/xhprof-0.9.4.tgzsudo转载 2015-11-10 11:15:18 · 1265 阅读 · 0 评论 -
mht转html代码(php)
$content_header = "/Content-Transfer-Encoding:(.*?)\n/ims"; preg_match($content_header,$content,$item_results); $bianma=trim($item_results[1]); if($bianma == 'qu转载 2015-11-10 13:33:51 · 2399 阅读 · 1 评论 -
mongo分片
看了几个大牛的博客后,开始试着分片。第一步:mongod --fork --dbpath /mongo_data/config --logpath /mongo_data/log/config.log -port 10000mongos --port 20000 --configdb 192.168.128.5:10000 --logpath /mongo_data/log/mongo原创 2015-11-11 19:43:11 · 393 阅读 · 0 评论 -
trim函数遇到的问题
在php项目开发中遇到这样的字符串 $education_cnt = ‘2006.09 - 2010.07 , Yantai university , International Economics and Trade , Bachelor’;再用trim函数 trim($education_cnt,'') 时发现,原创 2015-10-12 14:36:12 · 1066 阅读 · 0 评论 -
php curl请求
我们先来认识下什么是cURL,可能还有很多同学没有听说过这个工具,我先来给大家简单介绍下什么是cURL:cURL可以使用URL的语法模拟浏览器来传输数据,因为它是模拟浏览器,因此它同样支持多种协议,FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP等协议都可以很好的支持,包括一些:HTTPS认证,HT转载 2015-11-16 18:20:59 · 457 阅读 · 0 评论 -
mongodb+php通过_id查询
在php中通过_id 在mongodb中查找特定记录: 查询条件需要这样写:array("_id"=>new MongoId("$id"))转载 2015-12-09 18:47:12 · 1218 阅读 · 0 评论 -
判断php数组是否为空遇到的坑
在将mongo数据导入mysql时,要判断数组的内容是否为空。 看到下面的结论时: PHP判断数组为空首选方法:count($arr),size($arr); $arr= array(""); echo count($arr); echo size原创 2015-12-09 18:44:55 · 1319 阅读 · 0 评论 -
php正则匹配手机号,邮箱
1.先说匹配手机号: 正常的正则表达式为: /1[3458]{1}\d{9}/ 但是如果是中国电信以17开头的就匹配不到,所以应该修正为 /1[34578]{1}\d{9}/2.再是邮箱 之前用正则表达式为: /(([a-z0-9]*[-_]?[a-z0-9]+[原创 2015-12-10 11:12:51 · 3502 阅读 · 1 评论 -
PHP $_SERVER['SCRIPT_FILENAME'] 与 __FILE__ 的区别
PHP $_SERVER['SCRIPT_FILENAME'] 与 __FILE__通常情况下,PHP $_SERVER['SCRIPT_FILENAME'] 与 __FILE__ 都会返回 PHP 文件的完整路径(绝对路径)与文件名:<?phpecho 'SCRIPT_FILENAME 为:',$_SERVER['SCRIPT_FILENAME'];echo '';echo '__转载 2015-11-24 16:52:51 · 2158 阅读 · 0 评论 -
PHP魔术函数、魔术常量、预定义常量
一、魔术函数(13个)1、__construct() 实例化对象时被调用, 当__construct和以类名为函数名的函数同时存在时,__construct将被调用,另一个不被调用。 2、__destruct() 当删除一个对象或对象操作终止时被调用。 3、__call() 对象调用某个方法, 若方法存在,则直接调用;若不存在,则会去调用__call函数。转载 2015-11-24 17:05:38 · 339 阅读 · 0 评论 -
thinkphp3.2 include标签遇到的问题
使用include标签时,遇到效果显示不出来,特查阅了手册:使用完整文件名包含格式:例子:这种方式,指的是服务器端包含(服务器端路径),而不是包含一个 URL 地址。如果使用相对路径的话,是基于项目入口文件位置而言。注意:该种方式模板文件名必须包含后缀。原创 2015-12-11 14:25:38 · 2697 阅读 · 0 评论 -
ThinkPHP中的动态缓存(S方法)和快速缓存(F方法)
系统默认的缓存方式是采用File方式缓存,我们可以在项目配置文件里面定义其他的缓存方式,例如,修改默认的缓存方式为Xcache(当然,你的环境需要支持Xcache) 对于File方式缓存下的缓存目录下面因为缓存数据过多而导致存在大量的文件问题,ThinkPHP也给出了解决方案,可以启用哈希子目录缓存的方式。 'DATA_CACHE_SUBDIR'=>true转载 2015-12-14 22:40:53 · 741 阅读 · 0 评论 -
最近迷惑的地方
1.php中突破基于HTTP_REFERER的防盗链措施(stream_context_create) http://www.jb51.net/article/26670.htm http://www.jb51.net/article/8431.htm http://www.jb51.net/article/57685.htm2.巧用原创 2015-12-15 14:40:44 · 336 阅读 · 0 评论 -
PHP函数strip_tags的一个bug浅析
PHP 函数 strip_tags 提供了从字符串中去除 HTML 和 PHP 标记的功能,该函数尝试返回给定的字符串 str 去除空字符、HTML 和 PHP 标记后的结果。由于 strip_tags() 无法实际验证 HTML,不完整或者破损标签将导致更多的数据被删除。比如下述代码:复制代码 代码如下:stringstringstringhellostring通过转载 2015-12-30 11:22:49 · 1882 阅读 · 0 评论 -
php cli模式学习(PHP命令行模式)
之前知道php—cli模式是一种类似shell命令式的执行php程序,不过一直以为这个是一种落后的方式,应该没有什么意义,因为从没有遇到过使用这个cli模式编程的。不过今天遇到了使用cli模式的应用php_cli模式简介 php-cli是php Command Line Interface的简称,如同它名字的意思,就是php在命令行运行的接口,区别于在Web服务器上运行的php转载 2016-01-18 19:35:10 · 857 阅读 · 0 评论 -
如何严格设置php中session过期时间
如何严格限制session在30分钟后过期!1.设置客户端cookie的lifetime为30分钟;2.设置session的最大存活周期也为30分钟;3.为每个session值加入时间戳,然后在程序调用时进行判断;至于为什么,我们首先来了解下php中session的基本原理:PHP中的session有效期默认是1440秒(24分钟),也就是说,客户端超过24分钟没有刷新转载 2016-01-19 12:04:05 · 285 阅读 · 0 评论 -
php一些小知识点总结
1.对于json_code的数据,用json_decode解码时,json($json_str)返回的是对象,json_decode($json_str,true)返回的才是数组。2.对于用base64_encode传输过来的数据,如果有中文字符,'+'号会被替换成空格,为了防止乱码,要用base64_decode(str_replace(' ','+',$str))来处理。3.在php5原创 2015-12-09 19:22:16 · 978 阅读 · 0 评论 -
thinkphp3.2之url模式和后台模块之间的关系
1.ThinkPHP支持的URL模式有四种:普通模式、PATHINFO、REWRITE和兼容模式,可以设置URL_MODEL参数改变URL模式。URL模式URL_MODEL设置普通模式0PATHINFO模式1REWRITE模式2兼容模式原创 2015-12-03 20:23:23 · 2452 阅读 · 0 评论 -
php远程连接虚拟机mongo数据库失败问题(奇葩)
下午搞了几个小时的这个问题: 放火墙、端口、是否通信都用过了,还是不行,最后经由同事打开/etc/mongod.conf才发现问题,原来mongod.conf默认的配置有如下一条, # Listen to local interface only. Comment out to listen on all interfaces. bind_ip=12原创 2016-01-05 16:57:19 · 726 阅读 · 0 评论 -
设置php编译功能
有时候需要用运行一段 PHP 代码,比如测试某个函数返回值等等,如果启动 Http Server,再打开浏览器,那黄花菜都凉了。我们可以在 Sublime Text 3 中创建 PHP 的 build system,这样就可以利用 Ctrl+B 命令快速运行。1、将PHP程序设置到环境变量中,在任意目录下都可执行php;通过win+R输入sysdm.cpl打开系统属性(也可以通过计算机右击转载 2016-01-07 17:57:34 · 361 阅读 · 0 评论 -
namespace关键字和__NAMESPACE__常量
(PHP 5 >= 5.3.0, PHP 7)PHP支持两种抽象的访问当前命名空间内部元素的方法,__NAMESPACE__ 魔术常量和namespace关键字。常量__NAMESPACE__的值是包含当前命名空间名称的字符串。在全局的,不包括在任何命名空间中的代码,它包含一个空的字符串。Example #1 __NAMESPACE__ 示例, 在命名空间中的代码转载 2016-01-08 15:43:02 · 1521 阅读 · 0 评论 -
调用第三方接口时产生的数组问题
在调用第三方的邮件接口时,遇到一个问题: 当接口返回的信息有多条时,类似如下结构: $arr = array( 'task' => array( array(原创 2016-02-16 14:39:15 · 577 阅读 · 0 评论 -
遇到字符串操作时谨记
今天在执行插入sql更新操作时,表面上看,sql语句执行的没问题,但是将执行的sql语句复制到文件上时,发现在某一个地方自动换行,百思不得其解。查看打印的sql语句源代码时,发现换行的该位置有个 (换行),终于明白原因了。所以,在对字符串进行操作时,一定要在浏览器上打印并查看一下源代码,确认是否将看不见的字符考虑在内。原创 2016-02-02 21:34:29 · 291 阅读 · 0 评论 -
php魔术方法,设计模式的学习
1.__get/__set 将对象的属性进行一个接管。2.__call/__callStatic 用来控制php类方法(静态)的调用3.__toString 将php对象转换成一个字符串4.__invoke 将一个php对象当成一个函数执行时会回调这个魔术方法。原创 2016-02-16 22:05:37 · 273 阅读 · 0 评论 -
SOAP详解
1. SOAP简介1.1应用背景对于应用程序开发来说,使程序之间进行因特网通信是很重要的。目前的应用程序通过使用远程过程调用(RPC)在诸如 DCOM 与 CORBA 等对象之间进行通信,但是 HTTP 不是为此设计的。RPC 会产生兼容性以及安全问题;防火墙和代理服务器通常会阻止此类流量。通过 HTTP 在应用程序间通信是更好的方法,因为 HTTP 得到了所有的因特网浏览器及服务器的支持转载 2016-02-04 14:29:53 · 11334 阅读 · 0 评论 -
Cookie禁用了,Session还能用吗?
Cookie与 Session,一般认为是两个独立的东西,Session采用的是在服务器端保持状态的方案,而Cookie采用的是在客户端保持状态的方案。但为什么禁用Cookie就不能得到Session呢?因为Session是用Session ID来确定当前对话所对应的服务器Session,而Session ID是通过Cookie来传递的,禁用Cookie相当于失去了Session ID,也就得不到转载 2016-03-07 10:34:55 · 296 阅读 · 0 评论 -
PHP中file_exists与is_file,is_dir的区别介绍
很显然file_exists是受了asp的影响,因为asp不但有fileExists还有folderExists,driverExists,那么PHP中file_exists是什么意思呢? PHP的 file_exists = is_dir + is_file 它既可以判断文件是否存在,又可以判断目录是否存在。但这样一个全面的函数执行效率非常低,就像asp中request不指定是f转载 2016-03-07 11:36:30 · 1439 阅读 · 0 评论 -
php中mkdir()函数的权限问题
问题描述:使用以下php代码创建了一个目录,期望目录的权限是0777,实际结果是0755mkdir('./aa/',0777); 分析与测试结果: 1.mkdir()函数指定的目录权限只能小于等于系统umask设定的默认权限。如linux默认的umask一般0022, 即创建目转载 2016-03-07 11:37:18 · 519 阅读 · 0 评论 -
打印session变量遇到的坑
今天在处理注册手机号验证时,调试打印session变量一直不出结果,原来是少了session_start()这行代码,谨记谨记。原创 2016-03-30 17:27:55 · 1012 阅读 · 0 评论 -
求数组长度
在php中获取数组长度方法很简单,php为我们提供了两个函数可以计算一维数组长度,如count,sizeof都可以直接统计数组长度哦,下面我们来看几个实例吧。php如何获取数组的长度,使用php函数count(),或是sizeof()如果你想统计数组$arr的长度,也就是说该二维数组只有两条新闻,你想要的数字也是2,但是如果使用count($arr)不同版本的php,统计的结果转载 2016-03-07 15:07:23 · 573 阅读 · 0 评论 -
var_dump()函数输出不完整,有省略号?解决办法
php开发环境里,安装了xdebug模块后,var_dump()输出的结果将比较易于查看,但默认情况下,var_dump() 输出的结果将有所变化:过多的数组元素不再显示,字符串变量将只显示前N个字符,较深的数组元素也被显示成省略号。这点会带来一些不便,我们修改配置文件,设置这些。在php.ini里的xdebug节点中,加入如下xdebug.var_display_max_转载 2016-03-07 15:08:36 · 540 阅读 · 0 评论 -
正则匹配乱码
在模式修正符的位置上加小写字母u即可。原创 2016-03-07 15:09:38 · 9955 阅读 · 0 评论 -
mongo排序与分页
$data = $collection->find(array())->sort(array("value.count"=>-1))->limit($lol)->skip($i*$lol);while($data->hasNext()){ // $monarr[] = $mogodata->getNext(); $data_arr[] = $data->getNext(原创 2016-03-07 15:11:34 · 781 阅读 · 0 评论 -
php函数之func_get_args()、func_get_arg()与func_num_args()
header('Content-type:text/html;charset=utf-8');function foo(){ $numargs = func_num_args(); //返回调用函数的传入参数个数,类型是整型 echo 'Number of arguments: '.$numargs.''; if( $numargs >= 2 ) {转载 2016-04-01 10:24:33 · 3083 阅读 · 0 评论 -
php常用Output和ptions/Info函数集介绍
本篇文章是对php中常用Output和ptions/Info函数集进行了详细的分析介绍,需要的朋友参考下flush函数:刷新输出缓冲ob_clean函数:清空输出缓冲ob_end_clean函数:清空缓冲区并且关闭正在进行的输出缓冲ob_end_flush函数:发送缓冲区数据并且关闭缓冲区ob_flush函数:发送缓冲区数据ob_get_clean函数:获取缓冲区内转载 2016-03-08 18:43:30 · 315 阅读 · 0 评论 -
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
php在数组中查找指定值是否存在的方法有很多,记得很久以前我一直都是傻傻的用foreach循环来查找的,下面我主要分享一下用php内置的三个数组函数来查找指定值是否存在于数组中,这三个数组分别是 in_array(),array_search(),array_key_exists()。首先分别介绍一下各自的定义与作用in_array(value,array,type)该函数转载 2016-04-26 08:57:21 · 10615 阅读 · 0 评论