PHP
文章平均质量分 59
武燕铭
本人热爱生活积极向上...
展开
-
PHP 面试宝典
php1、表单中 get与post提交方法的区别?答:get是发送请求HTTP协议通过url参数传递进行接收,而post是实体数据,可以通过表单提交大量信息.2、session与cookie的区别?答:session:储存用户访问的全局唯一变量,存储在服务器上的php指定的目录中的(session_dir)的位置进行的存放 cookie:用来存储连续訪問一个頁面时所使用,是原创 2013-09-27 16:36:04 · 3617 阅读 · 0 评论 -
ECshop中注册时的邮箱验证功能实现代码
1、注册成功自动发邮件并退出登录状态,提示需要验证邮件才能登录。在user.php大约233行很234行把: $ucdata =empty($user->ucdata)? "" : $user->ucdata; show_message(sprintf($_LANG['register_success'], $username .$ucdata原创 2013-09-21 19:49:29 · 2428 阅读 · 0 评论 -
在Linux下不使用密码远程登陆其他Linux
有时需要再一台Linux上登陆其他Linux服务器,通常可以直接使用SSH命令,加入两台服务器一台服务器A,IP地址192.168.1.2,另一台服务器B,IP地址192.168.1.3,如果想从A服务器使用root用户登陆B服务器只需要在A服务器上执行/usr/bin/ssh root@192.168.1.3,提示输入正确的密码后可以顺利登陆B服务器,但是有时两台服务器之间登陆不需要密码,比如执原创 2013-09-17 17:12:01 · 742 阅读 · 0 评论 -
在Windows下不使用密码远程登陆Linux
在登陆Linux进行管理的时候我们通常会使用用户名和密码进行登陆,这样一来是比较麻烦,二来是不安全,为了解决这个问题,我们可以使用公私钥(public keys和private keys)进行认证。简单来说公钥存放在服务器上,私钥存放在客户端,接下来看一下配置过程,首先以root身份登录服务器。 为了能够顺利使用key进行认证,首先确定ssh服务的Pubkey认证功能是否打开,执原创 2013-09-17 17:12:43 · 808 阅读 · 0 评论 -
将IP以整型的方式存储到数据库中
在实现某些功能时有时会用到用户的IP地址,因为IP地址有四段,在保存到MySQL数据库中的时候可能会使用varchar(15)或者char(15),其实还有更好的方式那就是将IP地址转换成整型,这样占用空间更小,查询速度快,同时还方便比较。在数据库设计时要用无符号INT UNSIGNED,否则长度不够。下面给出主要PHP代码:php$ip = '这里是获取到的IP';echo $i原创 2013-09-17 17:09:25 · 1379 阅读 · 0 评论 -
整合discuz X2.5后用户免激活设置
用户在其他应用注册后切换到论坛会提示激活,这是因为用户虽然注册到了ucenter但是在discuz X2.5中仍然没有用户的数据,只要在其他应用注册时同时将用户的相关数据写入到即可,相关表有:pre_common_member 用户表pre_common_member_status 用户状态表pre_common_member_count 用户数据统计表pre_common_mem原创 2013-09-17 17:06:08 · 1157 阅读 · 0 评论 -
Apache Rewrite实现URL的跳转和域名跳转
1、Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基 于服务器级的(httpd.conf)和目录级的 (.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接 安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再利用源码和apxs来安装rew原创 2013-09-16 18:47:55 · 1091 阅读 · 0 评论 -
使用PHP采集远程图片
当我们需要采集网络上的某个网页内容时,如果目标网站上的图片做了防盗链的话,我们直接采集过来的图片在自己网站上是不可用的。那么我们使用程序将目标网站上的图片下载到我们网站服务器上,然后就可调用图片了。 本文将使用PHP实现采集远程图片功能。基本流程:1、获取目标网站图片地址。2、读取图片内容。3、创建要保存图片的路径并命名图片名称。4、写入图片内容。5、完成。我们通过写几原创 2013-09-16 18:46:42 · 896 阅读 · 0 评论 -
PHP 开源项目汇总
WordPress 【PHP开源 博客Blog】WordPress是最热门的开源个人信息发布系统(Blog)之一,基于PHP+MySQL构建。WordPress提供的功能包括:1.文章发布、分类、归档。 2.提供文章、评... WordPress 【PHP开源 博客Blog】WordPress是最热门的开源个人信息发布系统(Blog)之一,基于P原创 2013-09-16 11:29:28 · 3550 阅读 · 0 评论 -
一个PHP程序员应该掌握的10项技能!
很多学PHP的人一直也搞不清楚,一个PHP程序员和Java程序员或者是.net程序员有什么不同,告诉你,其实都一样!没有什么不同,下面的内容,就是针对一个Java程序员掌握的技能对比PHP来说的!告诉你,它们其实是一样的,不过是工具而已,没有高低贵贱之分。只不过你不熟练,不知道而已!1、语法:必须比较熟悉,在写代码的时候IDE的编辑器对某一行报错应该能够根据报错信息知道是什么样的语法错误并且知原创 2013-09-21 20:33:19 · 848 阅读 · 0 评论 -
优秀程序员的十个优秀习惯
在这个世界上,有数百万的人热衷于软件开发,他们有很多名字,如:软件工程师(Software Engineer),程序员(Programmer),编码人(Coder),开发人员(Developer)。经过一段时间后,这些人也许能够成为一个优秀的编码人员,他们会非常熟悉如何用计算机语言来完成自己的工作。但是,如果你要成为一个优秀的程序员,你还可以需要有几件事你需要注意,如果你能让下面十个条目成为你的习原创 2013-09-22 09:16:58 · 913 阅读 · 0 评论 -
Ecshop微博登录方式与用户账号的绑定
1.在ecs_users表中添加字段uid。2.在includes中的lib_passport.php中的 $other_key_array = array('msn', 'qq', 'office_phone','home_phone', 'mobile_phone');添加一字段'uid',即: $other_key_array = array('uid','m原创 2013-09-21 18:44:48 · 1650 阅读 · 2 评论 -
sphinx全文检索之PHP使用教程
以上一篇的email数据表为例:数据结构:view sourceprint?01.CREATETABLE email (02.emailid mediumint(8) unsignedNOT NULL auto_increment COMMENT '邮件id',03. 04.fromidint(10) unsigned NOT原创 2013-09-27 10:58:42 · 958 阅读 · 0 评论 -
PHP中文汉字验证码
hb.ttf换成随便你自己下载的ttfHeader("Content-type: image/PNG");$str="的一是在了不和有大这主中人上为们地个用工时要动国产以我到他会作来分生对于学下级就年阶义发成部民可出能方进同行面说种过命度革而多子后自社加小机也经力线本电高量长党得实家定深法表着水理化争现所二起政三好十战无农使性前等反体合斗路图把结第里正新开论之物从当两些还天资事队批如应原创 2013-09-27 10:51:21 · 1154 阅读 · 0 评论 -
面向对象和面向过程的区别
面向过程就是分析出解决问题所需要的步骤,然后用函数把这些步骤一步一步实现,使用的时候一个一个依次调用就可以了。 面向对象是把构成问题事务分解成各个对象,建立对象的目的不是为了完成一个步骤,而是为了描叙某个事物在整个解决问题的步骤中的行为。例如五子棋,面向过程的设计思路就是首先分析问题的步骤:1、开始游戏,2、黑子先走,3、绘制画面,4、判断输赢,5、轮到白子,6、绘制画面,7、判断输赢,8转载 2013-09-26 14:32:46 · 733 阅读 · 0 评论 -
Apache——Rewrite重写规则
1、Rewrite规则简介:Rewirte主要的功能就是实现URL的跳转,它的正则表达式是基于Perl语言。可基于服务器级的(httpd.conf)和目录级的(.htaccess)两种方式。如果要想用到rewrite模块,必须先安装或加载rewrite模块。方法有两种一种是编译apache的时候就直接安装rewrite模块,别一种是编译apache时以DSO模式安装apache,然后再原创 2013-09-23 16:15:49 · 1216 阅读 · 0 评论 -
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法
php 获取今日、昨日、上周、本月的起始时间戳和结束时间戳的方法,主要使用到了 php 的时间函数 mktime。下面首先还是直奔主题以示例说明如何使用 mktime 获取今日、昨日、上周、本月的起始时间戳和结束时间戳,然后在介绍一下 mktime 函数作用和用法。//php获取今日开始时间戳和结束时间戳$beginToday=mktime(0,0,0,date('m'),date('d'原创 2013-09-22 21:24:32 · 758 阅读 · 0 评论 -
最常见的6种网站流量统计工具介绍
1、CNZZ 服务统计由国际著名风险投资商IDG 投资的网络技术服务公司,是中国互联网目前最有影响力的免费流量统计技术服务提供商,专注于为互联网各类站点提供专业、权威、独立的第三方数据统计分析。同时,CNZZ 拥有全球领先的互联网数据采集、统计和挖掘三大技术,专业从事互联网数据监测、统计分析的技术研究、产品开发和应用,这也是笔者所使用的统计工具,感觉用起来比较不错。2、51Yes 网站原创 2013-09-23 15:44:55 · 4137 阅读 · 0 评论 -
php判断密码强度
一、php页面$score = 0;if(!empty($_GET['value'])){ //接收的值$str = $_GET['value'];}else{$str = '';}if(preg_match("/[0-9]+/",$str)){$score ++;}if(preg_match("/[0-9]{3,}/",$str)){$sc原创 2013-09-22 09:19:20 · 3173 阅读 · 2 评论 -
PHP实现即时网站截图
网站地址 (不带 http://):大小: xpx图片格式: PNG JPEG <?php$x = $_REQUEST['x'];$y = $_REQUEST['y'];$format = $_REQUEST['format'];$site = $_REQUEST['site'];$surl = 'http://0907.org/screenshot/screenshot原创 2013-09-22 09:15:05 · 2712 阅读 · 0 评论 -
20条常见的编码陷阱
不管你现在的编程技能有多么的高超,曾经你也是个亦步亦趋,不断的学习的初学者。在编程这条曲折的道路上,我想你肯定犯过一些低级的错误、遇见过一些普通的编码陷阱。本文作者跨越多个语言,为大家总结了20条常规陷阱,并提供了解决方案。JavaScript篇1.不必要的DOM操作例如下面这段代码:// anti-pattern for (var i = 0; i var li = $(原创 2013-09-16 15:34:18 · 716 阅读 · 0 评论 -
使用ucenter在第三方应用中实现同步注册与登录
首先到康盛官网下载UCenter 1.6.0,点此下载 下载解压安装(安装Ucenter时只需要upload目录中的文件),接下来将advanced目录下的uc_client目录和advanced/examples/目录下的api目录 include目录以及文件config.inc.php拷贝到应用(你的网站)的跟目录,文件如下图:可将config.inc.php中的代码清空,下面会提到如转载 2013-09-16 15:13:56 · 1214 阅读 · 0 评论 -
php获取各个时间段的时间
echo "今天:".date("Y-m-d")."";echo "昨天:".date("Y-m-d",strtotime("-1 day")), "";echo "明天:".date("Y-m-d",strtotime("+1 day")). "";echo "一周后:".date("Y-m-d",strtotime("+1 week")). "";echo "一周零两天四小时两原创 2013-09-15 19:48:42 · 1081 阅读 · 0 评论 -
MySQL数据库MyISAM和InnoDB存储引擎的比较
MySQL有多种存储引擎,MyISAM和InnoDB是其中常用的两种。这里介绍关于这两种引擎的一些基本概念(非深入介绍)。MyISAM是MySQL的默认存储引擎,基于传统的ISAM类型,支持全文搜索,但不是事务安全的,而且不支持外键。每张MyISAM表存放在三个文件中:frm 文件存放表格定义;数据文件是MYD (MYData);索引文件是MYI (MYIndex)。InnoDB是事务型引原创 2013-09-15 19:44:37 · 1190 阅读 · 0 评论 -
PHP 过滤器(Filter)
PHP 过滤器用于验证和过滤来自非安全来源的数据,比如用户的输入。什么是 PHP 过滤器?PHP 过滤器用于验证和过滤来自非安全来源的数据。验证和过滤用户输入或自定义数据是任何 Web 应用程序的重要组成部分。设计 PHP 的过滤器扩展的目的是使数据过滤更轻松快捷。为什么使用过滤器?几乎所有 web 应用程序都依赖外部的输入。这些数据通常来自用户或其他应用程序(比如 web原创 2013-09-15 19:43:29 · 744 阅读 · 0 评论 -
PHP递归实现无限级分类
在一些复杂的系统中,要求对信息栏目进行无限级的分类,以增强系统的灵活性。那么PHP是如何实现无限级分类的呢?我们在本文中使用递归算法并结合mysql数据表实现无限级分类。递归,简单的说就是一段程序代码的重复调用,当把代码写到一个自定义函数中,将参数等变量保存,函数中重复调用函数,直到达到某个条件才跳出,返回相应的数据。Mysql首先我们准备一张数据表class,记录商品分类信息。表中有原创 2013-09-15 19:42:11 · 781 阅读 · 0 评论 -
互联网系统架构的演进
多终端接入、开放平台给互联网带来了前所未有的用户量级和访问规模,SNS网站产生了海量的UGC(用户产生内容),而且这些内容依托关 系链扩散速度之快、传播范围之广是传统网站难以想象的,海量数据的计算存储也一直是近年互联网领域的热点。本文将从发展演进的层面探讨互联网的系统架构。天下武功唯快不破网站初期的架构一般采用“短平快”的架构思路,架构以简单清晰、容易开发为第一衡量指标。互联网架构选型原创 2013-09-15 19:34:04 · 629 阅读 · 0 评论 -
PHP位运算 详细说明
在实际应用中可以做用户权限的应用我这里说到的权限管理办法是一个普遍采用的方法,主要是使用到”位运行符”操作,& 位与运算符、| 位或运行符。参与运算的如果是10进制数,则会被转换至2进制数参与运算,然后计算结果会再转换为10进制数输出。它的权限值是这样的2^0=1,相应2进数为”0001″(在这里^我表示成”次方”,即:2的0次方,下同)2^1=2,相应2进数为”0010″2^原创 2013-09-15 19:31:54 · 591 阅读 · 0 评论 -
PHP 错误处理
在 PHP 中,默认的错误处理很简单。一条消息会被发送到浏览器,这条消息带有文件名、行号以及一条描述错误的消息。PHP 错误处理在创建脚本和 web 应用程序时,错误处理是一个重要的部分。如果您的代码缺少错误检测编码,那么程序看上去很不专业,也为安全风险敞开了大门。本教程介绍了 PHP 中一些最为重要的错误检测方法。我们将为您讲解不同的错误处理方法:简单的 "die()" 语句原创 2013-09-13 19:32:46 · 740 阅读 · 0 评论 -
PHP使用DES进行加密解密
DES是一种对称加密算法,也就是通过密文和合法的密钥能够将明文还原出来,在程序开发过程中有些接口可能需要获取原始数据,而发送的数据又比较敏感(比如用户的密码等信息),这时可以选择DES加密算法,DES的安全性还算可靠,只要加密密钥不泄露,目前破解的方法只有穷举法进行破解。 再说一下应用时需要注意的地方, 1.DES加密时需要的key(密钥)长度不能超过8位,一般我们原创 2013-09-13 14:33:51 · 771 阅读 · 0 评论 -
为PHP增加mongodb扩展模块
Linux下增加扩展模块,首先从http://pecl.php.net/package/mongo下载源码包,这里下载的是mongo-1.2.12.tgz,接下来执行安装步骤tar zxvf mongo-1.2.12.tgzcd mongo-1.2.12准备编译环境/usr/local/webserver/php/bin/phpize./configure --with-php-c原创 2013-09-13 14:22:34 · 840 阅读 · 0 评论 -
为php添加扩展
php有很多扩展可以给工作带来极大的方便,但往往是在需要的时候才发现编译安装的时候没有加进入,这个时候如果重新编译一次还是比较麻烦的,在Linux中有比较好的解决办法,那就是phpize这个工具。phpize 是属于 php-devel 中的东西,主要是设定 php 外挂模块的一些设定所以安装 php-devel 相关套件就会有 phpize 可以使用 (档案预设存放于 /usr/bin/原创 2013-09-15 19:49:19 · 774 阅读 · 0 评论 -
session入库
默认情况下,PHP会话(session)是通过文件来保存的。这样做有以下几个缺点:会话文件一般都很小,但文件数却很多,在文件系统中保存许多这样的小文件非常浪费空间,且效率不高。分布式的站点难以利用会话文件来共享会话。会话文件方式不利于统计在线用户的会话信息。为解决以上问题,我们可以考虑用数据库来保存会话信息。对于 PHP 开发来说,保存会话用 MySQL 是一个非常不错的选择。原创 2013-09-15 19:31:17 · 832 阅读 · 0 评论 -
PHP利用imagick把PDF转成PNG
通过PHP把PDF生成PNG图片,一般用在在线阅读浏览用的。function pdf2png($PDF,$Path){if(!extension_loaded('imagick')){return false;}if(!file_exists($PDF)){return false;}$IM = new imagick();$IM->setResolution(原创 2013-09-15 19:34:30 · 1554 阅读 · 0 评论 -
解决 json_encode 中文乱码
解决以下问题json_encode UTF8码中文后的字符串不可阅读json_encode 多级数组中文乱码问题json_encode 数组中包含换行时错误问题json_encode 数组中键为中文的问题PHP代码:function _encode($arr){$na = array();foreach ( $arr as $k => $value ) {$原创 2013-09-15 19:37:20 · 1067 阅读 · 0 评论 -
一个抽奖函数(自定义中奖项数和概率)
/** 一个抽奖类,精确到万分之一* 三个步骤:1.接受一个中奖概率数组;2.接受一个抽奖种子;3.返回中奖等级*/class Lottery {/** 中奖概率数组,自动判断奖项数目* 数组键值和为100,自动计算出不中奖的概率,若初始是超过100抛出一个错误*/protected $_rate = array();/** 设置中奖概率,* @pa原创 2013-09-15 19:51:20 · 2142 阅读 · 0 评论 -
php开发常见的十个问题
1、使用MyISAM而不是InnoDBMySQL有很多的数据库引擎,单一般也就用MyISAM和InnoDB。MyISAM是默认使用的。但是除非你是建立一个非常简单的数据库或者只是实验性的,那么到大多数时候这个选择是错误的。MyISAM不支持外键的约束,这是保证数据完整性的精华所在啊。另外,MyISAM会在添加或者更新数据的时候将整个表锁住,这在以后的扩展性能上会有很大的问题。解决办法很原创 2013-09-15 19:49:47 · 701 阅读 · 0 评论 -
PHPMyadmin 配置文件详解(配置)
PHPMyadmin配置文件config.inc.php内容如下,在需要设置的地方增加了相关注释。常适合对数据库操作命令不熟悉的数据库管理者,下面我就说下怎么安装该工具:1.先到网上下载phpmyadmin,再解压到可以访问的web目录下(如果是虚拟空间,可以解压后通过ftp等上传到web目录下),当然您可以修改解压后该文件的名称。2.配置config文件打开libraries下的原创 2013-09-15 19:50:00 · 1348 阅读 · 0 评论 -
PHP 循环
PHP 中的循环语句用于执行相同的代码块指定的次数。循环在您编写代码时,您经常需要让相同的代码块运行很多次。您可以在代码中使用循环语句来完成这个任务。在PHP中,我们可以使用下列循环语句:while只要指定的条件成立,则循环执行代码块do...while首先执行一次代码块,然后在指定的条件成立时重复这个循环for循环执行代码块指定的次数foreach根据原创 2013-09-15 19:46:55 · 782 阅读 · 0 评论 -
PHP如何解决网站大流量与高并发的问题
首先,确认服务器硬件是否足够支持当前的流量。普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题,否则怎么优化都不可能彻底解决性能问题。其次,优化数据库访问。前台实现完全的静态化当然最好,可以完全不用访问数据库,不过对于频繁更新的网站, 静态化往往不能满足某些功能。缓存技术就是另一个解决方案,就是将原创 2013-09-15 19:46:02 · 1142 阅读 · 0 评论