PHP
文章平均质量分 65
释然me
专注web
展开
-
web学习的有关书籍
1`php和mysql web开发(原书第4版)~ Luke Welling (作者), Laura Thomson (作者), 武欣 (译者) 出版日期: 2009年2月1日 出版社: 机械工业出版社; 第1版 (2009年2月1日)2`细说PHP(第2版)(附DVD光盘1张) ~ 高洛峰 (作者) 出版日期: 2012年10月1日 出版社: 电子工业出版原创 2012-12-13 09:08:09 · 1146 阅读 · 0 评论 -
开发者必备,超实用的PHP代码片段!
本文转自:http://www.csdn.net/article/2013-11-01/2817365-useful-snippets-for-php-developers此前,研发频道曾发布《直接拿来用,10个PHP代码片段》,得到了网友们的一致好评。本文,笔者将继续分享九个超级有用的PHP代码片段。当你在开发网站、应用或者博客时,利用这些代码能为你节省大量的时间。一、查看邮件是否已转载 2013-11-03 21:46:58 · 868 阅读 · 0 评论 -
PHP中特殊HTML元素的转换
PHP项目开发过程中,经常需要对一些特殊字符进行处理,否则这些字符可能无法按输出或输出乱码。下面对HTML标记中的一些常用特殊字符进行转换。q & 转换为 &q " 转换为 "q ' 转换为 'q q > 转换为 >其中,“&”为HTML元素,“&”为显示的字符串。例如,若想在页面正常输出如下代码:明日科技则需要在HTM转载 2013-07-19 21:04:32 · 11884 阅读 · 0 评论 -
PHP常见的字符串处理函数
这些字符串处理函数,大多都是在原字符串上修改,返回值一个修改后的新的字符串原创 2013-11-02 09:40:01 · 767 阅读 · 0 评论 -
PHP防注入漏洞过滤函数
PHP//PHP整站防注入程序,需要在公共文件中require_once本文件//判断magic_quotes_gpc状态if (@get_magic_quotes_gpc ()) { $_GET = sec ( $_GET ); $_POST = sec ( $_POST ); $_COOKIE = sec ( $_COOKIE转载 2013-10-07 17:53:06 · 1449 阅读 · 0 评论 -
php面试
流行的php面试题及答案在PHP中,当前脚本的名称(不包括路径和查询字符串)记录在预定义变量(1)中;而链接到当前页面的URL记录在预定义变量(2)中。答:echo $_SERVER['PHP_SELF']; echo $_SERVER["HTTP_REFERER"];执行程序段将输出(3)。答:0在HTTP 1.0中,状态码 401 的含义是(4);如果返回“找不到文件”的提转载 2013-09-19 15:08:16 · 1278 阅读 · 0 评论 -
php基础注意点
基础知识的扎实是进阶高层知识领域的底层建筑,无论学习哪门语言都是这个道理,小细节决定一切,PHP的学习也不例外。下面总结一些PHP基础学习中经常误解、曲解、易混淆的知识点(没有按照PHP进阶学习的顺序)。1.PHP基础类型中的浮点型转化为整型的特例1echo intval((0.1+0.7)*10);有PHP基础的人可能都会认为上转载 2013-07-20 20:00:48 · 846 阅读 · 0 评论 -
PHP魔术方法和魔术常量
关于php中的魔术方法(函数)早有听过,可对于具体是什么,没有具体去了解过。要不是那天的笔试题涉及到,估计还是不能去主动了解这一方面。这是php手册上的解释魔术方法:魔术函数是PHP中内置的语言特性,当程序执行到某种情况时,如果定义了这些魔术函数 (php手册中称之为“Overloading”),则PHP会调用他们,同时也会传入相应的参数,可以认为是PHP执行过程中的钩子函数。常见的如下:原创 2013-07-20 20:16:33 · 3770 阅读 · 0 评论 -
pdo
忽然记起16号那天下午的面试,面试官问了我一个问题,“我现在用的是mysql数据库,如果过一段时间我要换成SQL Server 或者Oracle,那么我如何做最小的改动,来实现不同数据库之间的切换?”。我的回答是用php的扩展pdo方式。后来又问:“具体你了解pdo的具体实现么?”;说真的,这个底层确实没有了解过。只知道现在PDO使用的很是普遍,自己也用过,但是仅仅是会使用,关于里面的具体实现原创 2013-07-20 19:32:35 · 771 阅读 · 0 评论 -
php邮箱验证
利用 preg_match(),我们可以完成字符串的规则匹配。如果找到一个匹配,preg_match() 函数返回 1,否则返回 0。还有一个可选的第三参数可以让你把匹配的部分存在一个数组中$pattern="/\w+([-+.]\w+)*@\w+([-.]\w)*\.\w+([-.]\w+)*/";//$pattern="/^([a-zA-Z0-9]+[_|_|.]?)*[a-zA-原创 2013-11-24 09:20:58 · 968 阅读 · 0 评论 -
php遍历目录输出目录及其下的所有文件
好多次笔试都会遇到这个问题,所以特意给写了出来function my_scandir($dir){ $files=array(); if(is_dir($dir)){ if($handle=opendir($dir)){ while(($file=readdir($handle))!==false){ if($file!='.' && $file!=".."){原创 2013-11-30 21:35:44 · 3798 阅读 · 0 评论 -
使用SWFUpload上传文件
什么是SWFUploadSWFUpload是一个网站前端文件上传组件。SWFUpload通过flash+javascript,实现在不刷新网页的条件下,多个文件批量上传(实际上是逐个上传)、以及显示上传进度。SWFUpload基本原理1、传统的html表单文件上传传统的文件上传是使用下面这种Form的:1form id="file-f转载 2014-06-20 15:35:33 · 799 阅读 · 0 评论 -
PHPExcel操作excel、csv格式的文件
/** * * @author Sam@ozchamp.net * */class Excel{ public $currentSheet; public $filePath; public $fileType; public $sheetIndex=0; public $allColumn; public $allRow; public function i转载 2014-04-11 11:20:56 · 8002 阅读 · 0 评论 -
mkdir创建多级目录
今天才知道mkdir() 可以创建多级目录,以前使用的时候,自己一级一级的创建,有些麻烦,突然之间觉得这个函数太好使了。下面是php手册上bool mkdir ( string$pathname [, int$mode = 0777 [,bool $recursive = false [, resource $context ]]] )返回值为bool类型。原创 2014-02-20 14:49:36 · 14046 阅读 · 0 评论 -
php生成xml的简单实用
前几天遇到写web service接口,就随便了解了php生成xml文件的几种方式,总共有四种方法,可参考:http://www.oschina.net/code/snippet_110138_4727本文使用的是DomDocument生成xml文件。常见的几个函数的介绍如下: createElement:创建节点 createTextNode:创建文本内容 a原创 2014-02-07 11:41:15 · 3003 阅读 · 0 评论 -
关于htmlentities 、htmlspecialchars、addslashes的使用
1、html_entity_decode():把html实体转换为字符。Eg:$str = "just atest & 'learn to use '";echo html_entity_decode($str);echo "";echo html_entity_decode($str,ENT_QUOTES);echo "";echo html_原创 2014-01-14 12:09:55 · 5714 阅读 · 0 评论 -
php检测密码强度
先收藏一下,说不定什么时候就用上了,/** * 检测密码强度 */function password_strength($string){ $h = 0; $size = strlen($string); //print_r(count_chars($string, 1)); foreach(count_chars($string,转载 2013-12-27 17:01:53 · 4940 阅读 · 0 评论 -
php中filter函数用来验证、过滤
PHP Filter 简介PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤。//除去html标签,或除去编码特殊字符var_dump(filter_var("中文ABC@#abcBBB",FILTER_SANITIZE_STRING));//url_encoded编码,除去或编码特殊字符var_dump(filter_var("ht原创 2014-01-10 10:52:24 · 1619 阅读 · 0 评论 -
php实现 scws中文分词的搜索
1、4个文件解压后,放到一个地方 eg:E:/wamp/scws2、php.ini 中配置 extension = php_scws.dll scws.default.charset = utf8 //配置默认的编码方式scws.default.fpath = "E:/wamp/scws" //加压后文件的路径3、使用 $so = scws_ne原创 2013-07-03 18:29:02 · 1889 阅读 · 0 评论 -
Jpgraph学习
一、Jpgraph安装配置下载Jpgraph安装包解压后放置磁盘中,(最好是放在和网页一起)修改php.ini文件:1、内存 memory_limit=X,至少为32M 2、执行时间 max_execution_time=X,对于复杂的图片加载时需要较多 的时间,根据图片的复杂度做相应的修改 3、原创 2013-07-03 18:38:19 · 2632 阅读 · 0 评论 -
php验证码生成
//image.phpob_clean();Header("Content-type: image/gif");/** 初始化*/$border = 0; //是否要边框 1要:0不要$how = 4; //验证码位数$w = $how*25; //图片宽度$h = 45; //图片高度$fontsize = 15; //字体大小$alpha = "原创 2013-07-03 18:22:33 · 843 阅读 · 0 评论 -
PHP正则表达式学习
思维导图 点击下图,可以看具体内容! 介绍 正则表达式,大家在开发中应该是经常用到,现在很多开发语言都有正则表达式的应用,比如javascript,java,.net,php等等,我今天就把我对正则表达式的理解跟大家唠唠,不当之处,请多多指教! 需要知道的术语——下面的术语你知道多少? Δ 定界符Δ转载 2013-05-18 12:16:31 · 634 阅读 · 0 评论 -
正则表达式
/** perl风格正则匹配 */ function pregPN($test){ /** 匹配手机号码 规则: 手机号码基本格式: 前面三位为: 移动:134-139 147 150-152 157-159 182 187 188 联通:130-132 155-156 185 186 电信:133 153 18原创 2013-04-16 21:26:53 · 818 阅读 · 0 评论 -
smarty缓存技术详解
缓存机制能能有效的减轻网站的服务器压力,Smarty模板引擎的一大亮点就是为我们提供了非常简单的缓存操作首先我们要知道Smarty缓存机制分为全局缓存,部分缓存,局部缓存三种,我们一一介绍。1、全局缓存 顾名思义,全局缓存就是为整个网站的全部页面都生成缓存页面。 首先我们要操作smarty的配置文件,开启缓存,指定缓存文件目录,并设置缓存的存活时间 $smarty->原创 2013-04-21 21:49:11 · 1541 阅读 · 0 评论 -
PHP时间类
header("Content-type:text/html;Charset=utf-8");class time{ private $year;//年 private $month;//月 private $day;//天 private $hour;//小时 private $minute;//分钟 private $second;//秒 private $mi原创 2013-04-07 19:06:26 · 882 阅读 · 0 评论 -
PHP加密解密
//加密function string2secret($str) { $key = "123"; $td = mcrypt_module_open(MCRYPT_DES,'','ecb',''); $iv = mcrypt_create_iv(mcrypt_enc_get_iv_size($td), MCRYPT_RAND); $ks = mcrypt_e原创 2013-04-07 19:05:17 · 721 阅读 · 0 评论 -
PHP服务器时差8小时的解决办法
方法一:date_default_timezone_set('PRC');没有返回值。下面再直接使用date函数就OK了$time = date(Y."年".m."月".d."日".G."时".i."分");方法二:修改php.ini中的;date.timezone = 为date.timezone = "Asia/Shanghai"(或者改为date.timezone =原创 2013-04-07 18:58:17 · 3530 阅读 · 0 评论 -
php字符串截取防止乱码
/** +---------------------------------------------------------- * 字符串截取,支持中文和其他编码 +---------------------------------------------------------- * @static * @access public +------------------原创 2013-04-04 08:34:40 · 1054 阅读 · 0 评论 -
对php中加密函数的总结
总的说来,能实现加密的函数有:(1)md5()(2)sha1()(3)crc32()(4)crypt()(5)uniqid()首先,md5()方法的详解:定义和用法md5() 函数计算字符串的 MD5 散列。md5() 函数使用 RSA 数据安全,包括 MD5 报文摘译算法。如果成功,则返回所计算的 MD5 散列,如果失败,则返回 false。语法m转载 2013-04-02 17:08:00 · 997 阅读 · 0 评论 -
PHP $_SERVER["REMOTE_ADDR"]
服务器变量:$_SERVER注: 在 PHP 4.1.0 及以后版本使用。之前的版本,使用 $HTTP_SERVER_VARS。 $_SERVER 是一个包含诸如头信息(header)、路径(path)和脚本位置(script locations)的数组。数组的实体由 web 服务器创建。不能保证所有的服务器都能产生所有的信息;服务器可能忽略了一些信息,或者产生了一些未在下面列出的新的信息转载 2013-06-09 21:39:02 · 19705 阅读 · 0 评论 -
php分页类
header("Content-type:text/html;Charset=utf-8");class SubPages{ private $each_disNums;//每页显示的条目数 private $nums;//总条目数 private $current_page;//当前被选中的页 private $sub_pages;//每次显示原创 2013-06-09 20:51:38 · 659 阅读 · 0 评论 -
php连接SQL Server数据库及相关的配置
通过PHP预定义函数连接sql server 1.需要配置php.ini文件 extension=php_mssql.dll前面的注视去掉 2、mssql.allow_persistent = On 开启 3、php5中的ntwdblib.dll文件复制到c:/system32下面 4、extension_dir = "自己ext文件(php5下面)夹的路径"(一般原创 2013-07-03 18:25:51 · 1000 阅读 · 0 评论 -
php笔试 php部分
1、输入:$a="The book is not the man but the woman"; 输出:$b="The book is not a man but a woman";写一个函数实现第一种方法:function change($a){$ss=explode(" ",$a);//print_r($ss);for($i=0;$i if($ss[$i]==原创 2013-07-12 18:26:49 · 817 阅读 · 0 评论 -
PHP调试时print_r ,var_dump的区别
说到输出,不得不提到php中的打印了。首先当然是最常用的echo了,echo :输出一个或多个字符串;print:和echo一样,但速度比echo慢。print_r: 打印关于变量的易于理解的信息,如果给出的是 string、integer 或 float,将打印变量值本身。如果给出的是 array,将会按照一定格式显示键和元素。object 与数组类似。 记住原创 2013-07-13 11:19:00 · 34901 阅读 · 1 评论 -
不要使用(include/require)_once
最近关于apc.include_once_override的去留, 我们做了几次讨论, 这个APC的配置项一直一来就没有被很好的实现过.在这里, 我想和大家在此分享下, 这个问题的原因, 以及对我们的一些启示.关于使用include还是include_once(以下,都包含require_once), 这个讨论很长了, 结论也一直有, 就是尽量使用include, 而不是include_o转载 2013-06-20 14:54:49 · 732 阅读 · 0 评论 -
PHP常用类型判断函数
1.gettype():获取变量类型2.is_array():判断变量类型是否为数组类型3.is_double():判断变量类型是否为倍浮点类型4.is_float():判断变量类型是否为浮点类型5.is_int():判断变量类型是否为整数类型6.is_integer():判断变量类型是否为长整数类型7.is_long():判断变量类型是否为长整数类型8.is_obje原创 2013-06-17 13:41:47 · 5161 阅读 · 0 评论 -
让的PHP代码飞起来的40条小技巧(提升php效率)
这是在网上看到的一篇帖子,讲的自己感觉比较实用,很注重细节,又担心以后找不到原帖子,所以就转了过来。 1.如果一个方法能被静态,那就声明他为静态的,速度可提高1/4; 2.echo的效率高于print,因为echo没有返回值,print返回一个整型; 3.在循环之前设置循环的最大次数,而非在在循环中; 4.销毁变量去释放内存,特别是大的数组; 5.避免使用像__get, __s转载 2013-06-06 09:01:21 · 763 阅读 · 0 评论 -
php生成word
Php导出word(1)首先,预览html页面,示例化对象,定义要导出的数据(2)点击下载页面,给id传值(任何值均可,仅用于判断),如果id有值,输出缓冲文件,保存为word格式。(3)点击下载后,(如果是图片的话,在保存为word时要使用绝对路径,这样才可以在保存的word中正常显示)(4)关闭缓存输出Word_con.php //预览要导出的html文件i原创 2013-06-06 09:10:28 · 2914 阅读 · 0 评论 -
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
在Windows环境下:原本在php4.3.0中运行正常的程序,在4.3.1中为何多处报错,大体提示为:Notice:Undefined varialbe:变量名称.例如有如下的代码: 复制代码 代码如下:if (!$tmp_i) { $tmp_i=10; } 在4.3.0中运行正常,在4.3.1中运行会提示Notice:Undefined varialbe转载 2013-06-12 15:36:36 · 2156 阅读 · 0 评论 -
PHP按照某个键值对二维数组进行排序
/** * 对二维数组进行排序 * @param $array * @param $keyid 排序的键值 * @param $order 排序方式 'asc':升序 'desc':降序 * @param $type 键值类型 'number':数字 'string':字符串 */ public function sort_ar原创 2015-01-15 14:54:12 · 4267 阅读 · 0 评论