随笔分类 - PHP算法
摘要:PHP多次调用Mysql数据库的存储过程会出现问题,主要问题为存储过程中执行多次SQL语句不能一一释放导致的,网上找了一些解决办法,比如使用 multi_query 然后一个一个释放,但是发现根本不适合我们的项目,我们使用CI框架写的,更多的是使用CI的数据库处理方法。所以只能另辟蹊径。一次偶然,把...
阅读全文
摘要:转自:PHP读取自定义ini文件到二维数组http://www.3mc2.com/php-read-file-to-array.html
阅读全文
摘要:项目需要,需要写一个函数,能够遍历指定目录中的所有文件,而且这个目录中的子目录也要遍历。输出文件的属性信息,并存储。想想需求,不就是一个ls -al命令吗,实现获取相关属性就好了,再加上一个遍历OK了事。项目过程中,便于操作,使用了json格式存储,但是也发现了一些问题。谨此记录问题及代码,便于参考。 $value) { if($key !== 0 ){ $string .= "\t"; } $string .= getFileAttr($file,$value); } ...
阅读全文
摘要:编辑器的主题有两种,一种是语法高亮颜色主题,一种是编辑器自身显示主题,如果要自定义编辑器样式,个人推荐soda。Ctrl+Shift+p 输入install,接着输入 soda,选择 Theme - Soda ,enter即可;在 Preference -> Setting-User的配置文件中输入"theme": "SodaLight.sublime-theme""theme": "SodaLight 3.sublime-theme"如果想要深色的就输入:"theme": "S
阅读全文
摘要:网上下载,XXX.tmTheme 样式,让后放置于C:\Users\{用户名}\AppData\Roaming\Sublime Text 2\Packages\Color Scheme - Default在菜单栏中的Preferrences -> Color Scheme找到你刚才下载的,点击即可下图是我下载的coda
阅读全文
摘要:PHP curl https 代理 cookie post
阅读全文
摘要:<?PHP $a = '234567890'; $b = '111111111111101'; $m = strlen($a); $n = strlen($b); $num = $m>$n?$m:$n; $result = ''; $flag = 0; while($num--){ $t1 = 0; $t2 = 0; if($m>0){ $t1 = $a[--$m]; } if($n>0){ $t2 = $b[--$n]; ...
阅读全文
摘要:<?php$requestUrl = 'ip138.com';$ch = curl_init();$timeout = 5;curl_setopt($ch, CURLOPT_URL, $requestUrl);curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_BASIC); //代理认证模式curl_setopt($ch, CURLOPT_PRO
阅读全文
摘要:偶然看到别人写的一句代码:<?phpif (version_compare("5.2", PHP_VERSION, ">")) { die("PHP 5.2 or greater is required!!!"); }?>发现获取PHP的版本信息原来这么简单~~~PHP_VERSION是一个常量,他就能获得PHP版本信息。version_compare是一个版本比较工具,当然也可以作为其他的版本比较工具:<?php if (version_compare(PHP_VERSION, '6.0.0'
阅读全文
摘要:看着标题很绕口,大致讲解一下。usort函数用法如下:bool usort ( array &$array , callback $cmp_function )第一个参数是一个数组(引用),第二个参数是要自定义的排序函数。我自己写了一个给文件大小排序的函数,使用usort,名为sortSize(),而sortSize又要调用另一个引用函数getByteSize(),示意图如下出错源代码:<?php function sortSize($a,$b){ $a = getByteSize($a); $b = getByteSize($b); ...
阅读全文
摘要:在学校呆着没意思,重温了一下PHP,看看以前写过的函数,突然想写一下已知文件大小,对数据排序。比如: 1.3G、153MB、458KB、998M、0.99G(这里未考虑MB与Mb的区别,一般不会涉及Mb的运算,所以Mb、MB、mb都看定为Mb,其实MB=8*Mb)函数如下:<?php function sortSize($arr){ $arr2 = $arr; $arr3 = array(); if(!is_array($arr)){ return false; } array_w...
阅读全文
摘要:在很多网页展示中,标题的长度有时需要量身定制,比如已经排定好的样式,一般都不会满足太长的标题,这就需要对标题进行截取。考虑到一般都是中文、英文、数字、英文符号、中文符号混合的标题,现有的函数只能使用mb_substr这样的针对编码的截取方式。但是这样的结果总是不令人满意的。比如,文章标题有以下几种:1、全英文:Celine Dion My Love Ultimate Essential Collection My Heart Will Go On2、全中文:一二三四五六七八九十一二三四五六七八九十一二三四五六七八九十3、中英文混排(包含中英标点):一二三四五;“;六七八九十;“;'Ce
阅读全文
摘要:今天写织梦模板,测试时,发现写的足够长的标题,怎么截取都是21个字(截取大于21),到文章页才发现原来文章的标题被自动截取成了21个汉字,也就是60个字节(我的是UTF-8编码,不知道这个计算怎么这么奇怪,本应是20的)。想想明白了,肯定是系统在编辑文章后,自动将文章标题截取成了60字节,于是开始更改默认的文章标题长度。更改织梦系统默认文章标题长度有两步:1、更改系统后台设置:后台=> 系统 => 其他选项 => 文章标题最大长度2、这步也必不可少的,更改数据库: 命令:ALTER TABLE dede_archives CHANGE `title` `title` VARC
阅读全文
摘要:下午两点,接到公司的面试电话,这次是电话面试,主要问了PHP函数,数据库性能优化,Apache规则等基础、高级的都有的东西,一时间还真有点招架不住。第一个题是关于PHP函数的问题,是要求写一个验证IP地址的函数,当时写的让面试官明显看出漏洞来了,“127.000.00023.0045”这验证吗?囧了~~~ 自已一个人在教室没什么事,总结一下,巩固一下,反思一下。写了一个验证IP的isValidIp函数,验证没问题~~~<?PHP function isValidIp($str){ $str = trim($str); if(preg_match('/\....
阅读全文
摘要:在网上,注册要求最多就是填入邮件地址,然后有些网站需要邮件激活认证。试想一下,有些用户只是为了下载或者看些内容才无奈注册的,那些提给你个邮件是否能用呢?我想更多的会随便写下类似:asfsagdfg@adfdlknsafdf.com 这样的邮件地址吧。后台验证邮件格式没一点问题,然后后台开始给发送邮件了,这时候资源的浪费是多么严重啊,后台程序等了半天,结果超时,系统的资源就这么消耗了。有没有一种方法既验证邮件格式又验证邮件主机本身是否正确呢?今天看书,从书中看到很多PHP跟网络相关的函数比如查看DNS记录(dns_get_record)、获取主机MX记录(getmxrr)、获取服务器端口号(getservname)以及套接字、邮件等函数。既然PHP有这么多好的功能来查看主机域名的状态,何不写一个主机验证的函数,既节省了带宽,又节约了宝贵的系统资源:
阅读全文
摘要:零、用户管理:
1、新建用户:
>CREATE USER name IDENTIFIED BY 'ssapdrow';
2、更改密码:
>SET PASSWORD FOR name=PASSWORD('fdddfd');
3、权限管理
>SHOW GRANTS FOR name; //查看name用户权限
>GRANT SELECT ON db_name.* TO name; //给name用户db_name数据库的所有权限
>REVOKE SELECT ON db_name.* TO name; //GRANT的反操作,去除权限;
一、数据库操作:
1、查看数据库:
>SHOW DATABASES;
2、创建数据库:
>CREATE DATABASE db_name; //db_name为数据库名
3、使用数据库:
>USE db_name;
4、删除数据库:
阅读全文
摘要:偶遇一PHP面试题,题目很短,也很常见,但更容易出错,题目如下:如何实现字符串翻转?第一反应,当然是strrev函数啦,这么容易的题目还放在面试里考,真不嫌麻烦啊?但是看了网上的答案后,发现自己错了;strrev函数对英文很好用,直接可以实现字符串翻转,但是面对中文呢?肯定都是乱码,对于这样的问题有很多,比如strstr,substr等函数都是这样的。还好PHP提供了mb_类的函数实现不同编码、不同语言之间的相互转换等操作。下面是我写的PHP字符串翻转函数(mb_类的函数需要开启一个mb_string实现)。
阅读全文
摘要:PHP笔试题——处理大文件(最简单的方法);偶遇PHP笔试题——处理一个大文件有500条数据(是不是前阵子被开放的用户名密码??),要求打开后怎么怎么操作,具体内容记的不详了,总之就是的得先解决打开的问题。
找到一个比较不错的方法分享一下。
阅读全文