
PHP学习收集
文章平均质量分 72
yanfangphp
这个作者很懒,什么都没留下…
展开
-
按天分表后查询分页(查询表计算方法)
/** * 分页计算方法 * @param totalNum符合条件的各个表数据数据条数∗∗totalNum 符合条件的各个表数据数据条数 * * totalNum 要求格式Array ( [0] => Array ( [0] => 20170922 [1] => 28 ) [1] => Array ( [0] => 20170921 [1] => 1 ) [2] => Ar原创 2017-09-28 15:26:31 · 6510 阅读 · 0 评论 -
PHP转换文件夹下所有文件编码
PHP转换文件夹下所有文件的编码 适合发布网站的其他编码版本 比如你有一个GBK版本 你想有一个UTF8版本 或者你只有GBK的源码 你想二次开发 但是你不想改变IDE的编码方式 你可以用这个程序将其批量转化为UTF8:代码如下: php/** * 把一个文件夹里的文件全部转码 只能转一次 否则全部变乱码 * @param string $filename */function ico原创 2013-05-06 11:05:41 · 932 阅读 · 0 评论 -
PHP页面跳转几种实现方法
PHP页面跳转一、header()函数 header()函数是PHP中进行页面跳转的一种十分简单的方法。header()函数的主要功能是将HTTP协议标头(header)输出到浏览器。 header()函数的定义如下: void header (string string [,bool replace [,int http_response_code]])可选参数repla原创 2013-04-17 17:29:55 · 742 阅读 · 0 评论 -
PHP输出XML到页面的3种方式
1:phpheader("Content-type: text/xml");echo ""1.0/" encoding=/"UTF-8/"?>";echo "";echo ""; echo ""; echo "小小菜鸟"; echo ""; echo ""; echo "24"; echo转载 2013-04-17 09:51:28 · 4285 阅读 · 0 评论 -
header常用指令
header常用指令header分为三部分:第一部分为HTTP协议的版本(HTTP-Version);第二部分为状态代码(Status);第三部分为原因短语(Reason-Phrase)。// fix 404 pages: 用这个header指令来解决URL重写产生的404 header header('HTTP/1.1 200 OK'); // s原创 2012-11-30 11:36:31 · 901 阅读 · 0 评论 -
代码规范
缩进与空白字符(Indenting and Whitespace)使用 2 个空格而不使用 tab 键进行代码缩进(notepad++, Eclipse 等编辑器均支持此项配置);行尾不应该有空白字符应使用 \n (Unix换行符),而不是 \r\n (Windows 换行符)所有文件均应以一个空行结尾运算符(Operators)所有二元运算符(二个值之间的运算符),如 +翻译 2013-04-08 17:49:04 · 782 阅读 · 0 评论 -
$_GET['goods_id']+0
目的: 为了防止sql注入,tid,goods_id都是正整数类型,防止人为了在后面追加 ?tid=1 or 1 这样的语句.原理: 不管你的参数多么险恶,+0后都老老实实变成数值类型比如 '?tid=1 or 1' , $_GET['tid']+0 后值变成1;有学生问,你为什么不用(int)强转或intval来转换.1: 用哪种方式,目的都是一样的2: 用+翻译 2013-03-29 10:55:32 · 939 阅读 · 0 评论 -
PHP之强制类型转换,慎用!
PHP是一门弱类型的语言。这是它的优势和特点,但是有的时候你又不得不对类型进行相应的转换。这个时候问题就来了。因为很多情况下,你会发现转换类型之后得到的数据和预期的值相差老大一截。这里我以强制转换为整形作为例子。看下面的代码,可以说你绝对不可能说出正确的答案。echo (int) 123.999999999999999; echo (int) -1.999999999999翻译 2013-02-26 10:51:52 · 3815 阅读 · 0 评论 -
PHP之如何将数组变量写入文件?
在用PHP记录日志,或者是 Ajax 请求出错想要 debug 的时候。我们一般都会将信息写入到一个指定的文件当中。然后根据相应的信息来处理问题。比如笔者最喜欢在用 Ajax 取不到数据的时候,在PHP脚本里面加上下面一段代码$fp = fopen('./a.txt', 'a+b'); fwrite($fp, $content); fclose($fp); 但是,这翻译 2013-02-26 10:44:39 · 6079 阅读 · 0 评论 -
PHP之慎用双等于(==)
PHP比较运算符出现的频率实在是太高了,尤其是 ==if(a == b){// do something}但是,你真的掌握了 == 了吗?细节很重要!来看下面的代码,说出你认为正确的答案var_dump(' 123fg456'==123);var_dump('some string' == 0);var_dump(123.0 == '123d456');var翻译 2013-02-26 10:18:32 · 1009 阅读 · 0 评论 -
PHP之像操作数组一样操作字符串
$str ='qwertyuiopasdfghjklzxcvbnm'; echo "{$str[5]}"; $str[5]='q'; echo $str;执行上面的例子会发现第一个输出的是'y',第二个输出时原来'y'的位置变成了'q'。说明:字符串中的字符可以用类似数组结构中的方括号包含对应的数字索引的形式来进行查找和修改,例如 $str[2]。当然 字符串中字符的排列也是翻译 2013-02-21 16:22:31 · 1349 阅读 · 0 评论 -
Fatal error: Call to undefined function
PHP常见错误处理之致命错误(一)----函数未定义一、错误类型:PHP致命错误Error type: PHP Fatal errorFatal error: Call to undefined function (a) in (b) on line (c)二、错误描述:该错误报告表示你正企图调用未经定义的函数(function),其中a----表示未定义的函数名;翻译 2013-02-21 16:10:24 · 17288 阅读 · 0 评论 -
简评file_get_contents与curl 效率及稳定性
做过好多抓取别家网站内容的产品,习惯了使用方便快捷的file_get_contents函数,但是总是会遇到获取失败的问题,尽管按照手册中的例子设置了超时,可多数时候不会奏效:$config['context'] = stream_context_create(array(‘http’ => array(‘method’ => “GET”, ’timeout’ => 5//这个超时时间不翻译 2013-03-04 17:50:57 · 1790 阅读 · 0 评论 -
PHP中获取文件扩展名的N种方法
PHP中获取文件扩展名的N种方法 从网上收罗的,基本上就以下这几种方式:第1种方法:function get_extension($file){substr(strrchr($file, '.'), 1);}第2种方法:function get_extension($file){return substr($file, strrpos($file,翻译 2013-03-04 15:35:22 · 56493 阅读 · 0 评论 -
如何屏蔽php中的phpinfo()函数
我们配置php环境的时候往往都会写phpinfo();这个函数来测试php环境是否安装成功,但往往这个函数也会给系统带来安全隐患,那么如何让关掉这个函数呢?下面介绍一种方法: 修改php.ini文件,在里面找到如下行, disable_functions = ; This directive allows you to disable certain ; functions fo翻译 2013-01-09 14:50:02 · 3184 阅读 · 0 评论 -
PHP获取随机数字和字母的方法大全
第一种方法 $FileID=date("Ymd-His") . '-' . rand(100,999); //$FileID为 20100903-132121-908 这样的的随机数?>第二种方法function randomkeys($length) { $returnStr=''; $pattern = '1234567890abcd原创 2012-12-18 11:40:51 · 7128 阅读 · 0 评论 -
PHP多种序列化/反序列化的方法
序列化是将变量转换为可保存或传输的字符串的过程;反序列化就是在适当的时候把这个字符串再转化成原来的变量使用。这两个过程结合起来,可以轻松地存储和传输数据,使程序更具维护性。1. serialize和unserialize函数这两个是序列化和反序列化PHP中数据的常用函数。 $a = ar原创 2012-12-14 10:47:20 · 475 阅读 · 0 评论 -
PHP超大文件下载,断点续传下载
最近导出的时候出现一个php内存溢出的问题,原因就是在于下载的时候读取生成的临时文件过大,PHP内存无法容纳,一开如是想到更改PHP内存限制,但是这个只是一个缓兵之计,于是想到了另外一个方法是把文件分次读取,并下载。以下是源代码:php $sourceFile = "1.tmp"; //要下载的临时文件名 $outFile = "用户订单.xls"; //下载保存到客户端的文件名原创 2013-05-06 12:09:43 · 710 阅读 · 0 评论 -
利用PHP实现图片等比例放大和缩小
function resizeimage($srcfile,$mySize){ $size=getimagesize($srcfile); switch($size[2]){ case 1: $img=imagecreatefromgif($srcfile); break; ca翻译 2013-05-07 17:41:06 · 1339 阅读 · 0 评论 -
史上最完全oophper php文件上传之文件类型对应表,ie,火狐各一份。
ie火狐id后缀名php识别出的文件类型0gifimage/gif1jpgimage/jpeg2pngimage/png3bmpimage/bmp4psdapplication/octet-stream5icoimage/x-ico原创 2014-11-18 14:47:41 · 1201 阅读 · 0 评论 -
发动短信内容截取方法
//发送短信方法function gbkStrSplit($string, $len = 1) { $length = strlen($string); $retstr = ''; $retArr = array(); for ($i = 0; $i $retstr .= ord($s原创 2014-04-09 19:49:28 · 1754 阅读 · 0 评论 -
开发中的验证码源码
index.html yanzhengma.phpsession_start();IamgeCode(4,100,30);function IamgeCode($num,$x,$y){ //生成验证码图片 Header("Content-type: image/PNG"); $codenum = (原创 2014-03-26 16:02:50 · 662 阅读 · 0 评论 -
php post json数据
function http_post_data($url, $data_string) { $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POSTFIELDS原创 2014-04-01 14:30:07 · 1169 阅读 · 0 评论 -
正则表达式语法
正则不经常用,偶尔用一回忘记的不是一点半点,很多都不知道什么含义,分享一下正则的语法,与大家共勉表达式匹配/^\s*$/匹配空行。/\d{2}-\d{5}/验证由两位数字、一个连字符再加 5 位数字组成的 ID 号。/]*)?>[\s\S]*/匹配 HTML 标记。翻译 2014-03-27 15:50:24 · 635 阅读 · 0 评论 -
根据密码长度 显示安全条
//根据密码长度显示安全条 密 码: * 弱原创 2014-03-28 15:01:18 · 1374 阅读 · 0 评论 -
PHP中的数组处理函数总结
#改变数组键的大小写 $arr1=array("a"=>"Lamp","db"=>"database","LANGUAGE"=>"PHP"); print_r(array_change_key_case($arr1,CASE_UPPER)); echo ""; print_r(array_change_key_case($arr1,CASE_LOWER)); echo "";转载 2014-03-06 18:03:15 · 628 阅读 · 0 评论 -
php常用处理字符串函数
addcslashes — 为字符串里面的部分字符添加反斜线转义字符addslashes — 用指定的方式对字符串里面的字符进行转义bin2hex — 将二进制数据转换成十六进制表示chop — rtrim() 的别名函数chr — 返回一个字符的ASCII码chunk_split — 按一定的字符长度将字符串分割成小块convert_cyr_string — 将斯拉夫语字翻译 2014-03-06 18:02:34 · 756 阅读 · 0 评论 -
php字符串修改(处理)函数总结
ltrim();//去掉字符串左空格; rtrim();//去掉字符串右空格; trim(); //去掉字符串两边空格; //去掉空格是返回一个新的字符串;原字符串不变; strlen(); //计算字符串长度; strrev(); //将字符串颠倒的函数; strtolower();//将字符串大写转换成小写,原来小写的不变; s转载 2014-03-06 18:04:55 · 2259 阅读 · 0 评论 -
php中heredoc的使用方法
Heredoc技术,在正规的PHP文档中和技术书籍中一般没有详细讲述,只是提到了这是一种Perl风格的字符串输出技术。但是现在的一些论坛程序,和部分文章系统,都巧妙的使用heredoc技术,来部分的实现了界面与代码的准分离,phpwind模板就是一个典型的例子。如下:$name = '浅水游';print Untitled Document翻译 2014-02-18 15:54:12 · 563 阅读 · 0 评论 -
php 将文件压缩为zip文件
PHP ZipArchive 是PHP自带的扩展类,可以轻松实现ZIP文件的压缩和解压,使用前首先要确保PHP ZIP 扩展已经开启/* 说明: 将多个文件压缩成一个zip文件的函数 * @param $files 数组类型 * @param destination 目标文件的路径 * @param $overwrite 是否为覆盖转载 2013-09-10 16:28:51 · 821 阅读 · 0 评论 -
php 获取url中文件扩展名
//取出url地址中文件扩展名$url = "http://sdk.tools.sinaapp.com/index.php?appname=beipiao&version=1";function getFileName($url){$a = explode('?', $url);$b = strrpos($a[0], '.'); //strrpos(被搜索字符串,要查找字符翻译 2013-09-10 12:25:27 · 2698 阅读 · 0 评论 -
PHP5之_set和_get函数
接触PHP5也有一段时间了,尽管PHP5出了很长时间了,但大家对PHP5还是不甚感冒。在我的BLOG里讲一天PHP5的东西,希望能够对推动PHP5有所贡献。 先来看一个例子:class UserInfo{ var $UserName = ’’; var $PassWord = ’’; var $Birthday = ’’; }这个例子我想很转载 2013-07-12 17:38:58 · 484 阅读 · 0 评论 -
php面向对象_get(),_set()的用法
一般来说,总是把类的属性定义为private,这更符合现实的逻辑。但是,对属性的读取和赋值操作是非常频繁的,因此在PHP5中,预定义了两个函数“__get()”和“__set()”来获取和赋值其属性,以及检查属性的“__isset()”和删除属性的方法“__unset()”。上一节中,我们为每个属性做了设置和获取的方法,在PHP5中给我们提供了专门为属性设置值和获取值的方法,“__set()”翻译 2013-07-08 09:58:21 · 453 阅读 · 0 评论 -
PHP删除目录及目录下所有文件
函数代码一:删除目录及目录下的所有文件//循环删除目录和文件函数function delDirAndFile( $dirName ){if ( $handle = opendir( "$dirName" ) ) {while ( false !== ( $item = readdir( $handle ) ) ) {if ( $item != "." && $item !=原创 2013-05-10 14:20:31 · 644 阅读 · 0 评论 -
PHP empty(),isset()与is_null()的实例测试
有关 PHP 的 empty(),isset() 还有 is_null() 这三个函数的用法讨论得已经很多了,而且很多资料也未必能说得很清楚。这里再重复一次,但不是从概念去说,直接用程序例子来说话,应该记忆会比较深刻些。测试的类型如下: $a;原创 2012-12-14 10:40:22 · 645 阅读 · 0 评论 -
收藏一个简洁的PHP可逆加密函数
很多时候我们需要对数据进行加密解密,比如有些数据需要保存到cookie中,但又不能被用户轻易得到这些数据,这时我们就需要加密这些数据保存到cookie中,等我们需要使用它们的时候再解密。加密的过程如下:// 加密数据并写到cookie里$cookie_data = $this -> encrypt("nowamagic",翻译 2012-12-14 11:00:27 · 1581 阅读 · 0 评论 -
再一次声明, 不要使用(include/require)_once
关于使用include还是include_once(以下,都包含require_once), 这个讨论很长了, 结论也一直有, 就是尽量使用include, 而不是include_once, 以前最多的理由的是, include_once需要查询一遍已加载的文件列表, 确认是否存在, 然后再加载.诚然, 这个理由是对的, 不过, 我今天要说的, 是另外一个的原因.我们知道, PHP原创 2012-10-30 15:13:09 · 489 阅读 · 0 评论 -
PHP JSON中文乱码解决方法大全
我们知道在使用Ajax技术与PHP后台交互时,中文乱码是常有的事,JSON作为与XML类似的数据交换格式,在PHP用来进行交互时也会出现中 文乱码的情况,解决PHP JSON中文乱码的方法思路其实与PHP Ajax传值中文字符乱码的解决方法类似,下面我以教程形式详细介绍下解决PHP JSON中文乱码的方法。 为什么PHP与JSON交互时会出现中文乱码? 由于JSON与JS一样,对翻译 2012-10-19 15:39:37 · 3531 阅读 · 1 评论 -
PHP开发中安全防范知识
PHP代码安全和XSS,SQL注入等对于各类网站的安全非常中用,尤其是UGC(User Generated Content)网站,论坛和电子商务网站,常常是XSS和SQL注入的重灾区。这里简单介绍一些基本编程要点, 相对系统安全来说,php安全防范更多要求编程人员对用户输入的各种参数能更细心. php编译过程中的安全 建议安装Suhosin补丁,必装安全补丁 php.原创 2012-10-18 18:42:49 · 1390 阅读 · 0 评论 -
eAccelerator与memcached的区别
欢迎各位加入群:206981178,共同学习eAccelerator和memcached,是目前较为主流的两个可使用在PHP之中的缓存加速工具. eAccelerator专门为PHP开发,而memcached不仅仅用在PHP之中,其他所有的语言都可以使用. eAccelerator的主要功能: 1. 缓存PHP文件的执行代码:在被缓存的代码再次被调用时,将直接原创 2012-10-18 14:56:11 · 924 阅读 · 0 评论