php
文章平均质量分 90
Debug_zhang
这个作者很懒,什么都没留下…
展开
-
在centos 6.6 上搭建一个简单的php的开发环境
目标在centos 6.6 上搭建一个简单的php的开发环境为了便于操作,安装采用yum的方式配置yum reposyum 是一个基于 RPM 包管理的字符前端软件包管理器。能够从指定的服务器自动下载 RPM 包并且安装,可以处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。总之yum 能帮忙解决包依赖,就想使用傻瓜相机一样,编译安装则有点像转载 2016-02-25 14:35:17 · 425 阅读 · 0 评论 -
php内核探索之变量Zval(1)
作为数据的容器,我们常常需要跟变量打交道,不管这个变量是数字、数组、字符串、对象还是其他,因而可以说变量是构成语言的不可或缺的基础。本文是PHP内核探索之变量的第一篇,主要介绍zval的基本知识,包括如下几个方面的内容:Zval的基本结构查看zval的方法:debug_zval_dump和xdebugZval的原理,COW等由于写作仓促,难免会有错误,欢迎指出。一、Zval的基本结转载 2016-02-25 20:22:59 · 375 阅读 · 0 评论 -
PHP内核探索之变量(2)-理解引用
本文主要内容:引论符号表与zval引用原理回到最初的问题一、引论 很久之前写了一篇关于引用的文章,当时写的寥寥草草,很多原理都没有说清楚。最近在翻阅Derick Rethans(home:http://derickrethans.nl/ Github:https://github.com/derickr)大牛之前做的报告时,发现了一篇讲解PHP引用机制的文章,也就是这个PDF转载 2016-02-25 20:32:58 · 459 阅读 · 0 评论 -
php 5.4中php-fpm 的重启、终止操作命令:
php 5.4中php-fpm 的重启、终止操作命令:查看php运行目录命令:which php/usr/bin/php查看php-fpm进程数:ps aux | grep -c php-fpm查看运行内存/usr/bin/php -i|grep mem重启php-fpm/etc/init.d/php-fpm restart在phpinfo()输出内容可以转载 2016-03-22 14:16:51 · 1117 阅读 · 0 评论 -
php的foreach深度剖析
php的foreach深度剖析转载 2016-02-26 10:41:37 · 420 阅读 · 0 评论 -
XSS跨站攻击
XSS跨站脚本攻击原理及防护方法(2010-05-16 17:17:32)转载▼标签:杂谈 概念:XSS(CrossSite Script)跨站脚本攻击。它指的是恶意攻击者往Web 页面里插入恶意html 代码,当用户浏览该页之时,嵌入其中Web 里面的html代码会被执行,从而达到恶意用户的特殊目的。本文介绍了该攻击方式,并给出转载 2016-02-26 17:11:25 · 516 阅读 · 0 评论 -
thinkphp的success方法
首先,他会先判断你的请求是什么,如果是正常的get或者post请求,那么他会有跳转模板和跳转的页面如果你是以ajax请求的,那么他不会执行跳转,他会先返回jsonReturn返回数据给前端,前端拿到数据后,会对数据中的信息进行提取,然后执行window.location.href=data['url'];进行跳转如果使用ajax跳转,就会执行三次的数据传送。请求-》响应-》在请求原创 2016-03-12 13:18:41 · 2532 阅读 · 0 评论 -
记住账号以及自动登录
要实现记住密码自动登录的功能我们大多数据都是利用了客户端的cookies来实现,我们利用php也不例外,有需要的朋友可以参考一下。php制作记住密码自动登录的解决思路,其实也就是对session,cookies的操作//检查用户是否登录 代码如下 复制代码 function checklogin(){ if(empty($_SESSION['user_info']))转载 2016-03-14 17:28:19 · 828 阅读 · 0 评论 -
在linux上安装pear
什么是pearpear是PHP扩展与应用库(the PHP Extension and Application Repository)的缩写。它是一个PHP扩展及应用的一个代码仓库,简单地说,pear就是PHP的cpan。在官网上有说明详细的安装信息,这里作简单说明。http://pear.php.net/manual/en/about-pear.php我的PHP目录为/usr/l转载 2016-03-01 11:16:42 · 2827 阅读 · 0 评论 -
Oauth的理解
理解OAuth 2.0作者: 阮一峰日期: 2014年5月12日OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2.0版。本文对OAuth 2.0的设计思路和运行流程,做一个简明通俗的解释,主要参考材料为RFC 6749。一、应用场景为了理解OAuth的适用场合,让我举一个假设的例子。有一个"云转载 2016-03-15 09:43:44 · 302 阅读 · 0 评论 -
加盐哈希
总的来说,就是在server端,用函数生成一个随机的盐值,将其和密码连起来,用加密算法加密,然后将加密后的密码和盐值都存入到数据库中。。当客户端登陆的时候,根据用户名从数据库中先取出盐值,对用户输入的密码进行加盐哈希,然后与数据库中的密码进行对比。。。如果为了更高的安全性,页可以再前端用js先对密码进行加密,也可以采用加盐哈希,原理就是可以用用户名和密码连起来进行加密,虽然在前端进行了加盐哈希原创 2016-03-15 13:39:25 · 1161 阅读 · 0 评论 -
php的写时复制
$m1 = memory_get_usage();$a = 12;$b = $a;$b++;$m2 = memory_get_usage();echo $m2-$m1;将一个变量赋给另一个变量的时候,只会讲一个引用指向该内存区域,但是当要对这个被赋值的变量进行写的时候,会在内存中重新分配一块内存,将那个引用指向这个内存原创 2016-07-24 23:01:56 · 345 阅读 · 0 评论 -
提升php的性能
1.在对变量赋值的时候,尽量不要对变量进行写操作,因为那会多浪费内存$name=$_POST['name'];2.在进行数据库查询的时候,不要使用循环语句进行查询,因为那会造成循环多少次就会new都少个新的连接,即使是连接池,他也会占用很多的连接。使用in的时候,in尽量不要有大量的数据,因为每次查询的时候,都会遍历一次in中的数据当使用外连接进行查询的时候,使用的是一次连接,如果原创 2016-07-24 23:15:48 · 359 阅读 · 0 评论 -
response响应给客户端(json、xml格式)
class Response { const JSON = "json"; /** * 按综合方式输出通信数据 * @param integer $code 状态码 * @param string $message 提示信息 * @param array $data 数据 * @param string $type 数据类型 * return str原创 2016-07-26 12:42:33 · 2012 阅读 · 0 评论 -
字符集和字符编码
十分钟搞清字符集和字符编码本文将简述字符集,字符编码的概念。以及在遭遇乱码时的一些常用诊断技巧背景:字符集和编码无疑是IT菜鸟甚至是各种大神的头痛问题。当遇到纷繁复杂的字符集,各种火星文和乱码时,问题的定位往往变得非常困难。本文就将会从原理方面对字符集和编码做个简单的科普介绍,同时也会介绍一些通用的乱码故障定位的方法以方便读者以后能够更从容的定位相关问题。在正式转载 2016-08-10 20:44:35 · 546 阅读 · 0 评论 -
php模拟http请求
php发送http请求http请求有get,post。php发送http请求有三种方式[我所知道的有三种,有其他的告诉我]。file_get_contents();详情见:http://www.cnblogs.com/simpman/p/3419989.htmlcurl发送请求。fsocket发送。下面说使用curl发送。首先环境需要配置好curl组件。转载 2016-08-11 08:30:46 · 8306 阅读 · 0 评论 -
生产环境下的错误日志记录
display_errors 错误回显,一般常用语开发模式,但是很多应用在正式环境中也忘记了关闭此选项。错误回显可以暴露出非常多的敏感信息,为攻击者下一步攻击提供便利。推荐关闭此选项。display_errors = On 开启状态下,若出现错误,则报错,出现错误提示 dispaly_errors = Off 关闭状态下,若出现错误,则提示:服务器错误。但是不会出现错误提示转载 2016-03-04 16:27:51 · 4238 阅读 · 0 评论 -
对shcema的理解
在一个数据库中可以有多个应用的数据表,这些不同应用的表可以放在不同的schema之中,同时,每一个schema对应一个用户,不同的应用可以以不同的用户连接数据库,这样,一个大数据库就可以根据应用把其表分开来管理。 不同的schema之间它们没有直接的关系,不同的shcema之间的表可以同名,也可以互相引用(但必须有权限),在没有操作别的schema的操作根权下,每个用户只能操作它自己的schema转载 2016-03-01 17:31:38 · 881 阅读 · 0 评论 -
页面跳转
php页面跳转转载 2015-09-01 19:29:06 · 827 阅读 · 0 评论 -
8个与php相关的函数
8个与php相关的函数转载 2015-08-21 12:00:13 · 326 阅读 · 0 评论 -
$_SERVER['PHP_SELF']、$_SERVER['SCRIPT_NAME'] 与 $_SERVER['REQUEST_URI']区别
$_SERVER['PHP_SELF']、$_SERVER['SCRIPT_NAME'] 与 $_SERVER['REQUEST_URI'] 三者关系转载 2015-12-02 09:56:07 · 473 阅读 · 0 评论 -
php获取客户端ip和服务器端ip
php获取服务端与客户端ip转载 2015-10-20 12:10:52 · 9302 阅读 · 0 评论 -
php的密码加密password_hash
一、前言PHP5.5提供了许多新特性及Api函数,其中之一就是Password Hashing API(创建和校验哈希密码)。它包含4个函数:password_get_info()、password_hash()、password_needs_rehash()、password_verify()。在PHP5.5之前,我们对于密码的加密可能更多的是采用md5或sha1之类的加密方式(没人转载 2015-12-09 10:41:17 · 936 阅读 · 0 评论 -
phpstorm快捷键
phpstorm快捷键转载 2015-11-30 18:35:53 · 410 阅读 · 0 评论 -
用header函数设置信息的几种
header的几种形式转载 2015-09-01 21:35:20 · 463 阅读 · 0 评论 -
file(),file_get_contents(),fopen()->fread()->fclose(),fgets(),fgetc()
file(),file_get_contents(),fopen()->fread()->fclose(),fgets(),fgetc()转载 2015-08-24 12:31:53 · 325 阅读 · 0 评论 -
php抓取页面的几种方式
php抓取页面的几种方式转载 2015-08-24 11:00:58 · 388 阅读 · 0 评论 -
用php调用接口api
php调用api接口转载 2015-11-30 18:03:33 · 6731 阅读 · 1 评论 -
fgets和gets fread和fgets的区别
fgets和gets fread和fgets的区别转载 2015-08-24 12:41:32 · 2001 阅读 · 0 评论 -
curl工具
curl的基本使用转载 2015-08-24 10:56:26 · 338 阅读 · 0 评论 -
php错误信息回显和错误日志
php错误信息回显和错误日志转载 2015-08-23 15:05:52 · 1214 阅读 · 0 评论 -
php分页 下标随着页数的增加而向后移
<?php $countData =$this->pageSize; if ($this->page == $this->totalPage){ $yushu = $this->total % $this->pageSize; if ($yushu != 0) { $countData原创 2015-12-20 14:15:04 · 804 阅读 · 0 评论 -
php的strlen和mb_strlen的区别
在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果不看手册,也许不太清楚其中的区别。下面通过例子,讲解这两者之间的区别。先看例子:';//14 echo mb_strlen($str,'utf8').'';//6 echo mb_strlen($str,'gbk').'';//8 echo mb_strlen($str,'gb2312').'转载 2016-01-27 16:43:09 · 329 阅读 · 0 评论 -
安装doctrine
安装doctrine首先要安装pear,见我上一篇文章1. 添加doctrine初始化通道pear channel-discover pear.symfony.com//这个是doctrine所依赖的pear channel-discover pear.doctrine-project.org2. 安装doctrine核心包pear install pear.doctr原创 2016-03-01 12:33:24 · 630 阅读 · 0 评论 -
LNMP一键安装(转自鸟哥)
LNMP一键安装包是什么?LNMP一键安装包是一个用Linux Shell编写的可以为CentOS/RadHat、Debian/Ubuntu VPS(VDS)或独立主机安装LNMP(Nginx、MySQL、PHP、phpMyAdmin)生产环境的Shell程序。我们为什么需要它? 编译安装需要输入大量的命令,如果是配置生产环境需要耗费大量的时间。不会Linux的站长或Linux新手想使转载 2016-03-04 12:19:04 · 752 阅读 · 0 评论