随笔分类 -  编程语言PHP

php备忘录,记录。优化,技巧,实验
摘要:被观察者通过自身的接口,将观察者注册到自己的属性里。 当触发调用的时候通过观察者统一实现的接口方法通知观察者。 当有新的观察者进来的时候,只需要新观察者实现接口,然后注册到被观察者属性里就可以啦。 这降低了主题对象和观察者对象的耦合度。 设计原则 在观察者模式中,会改变的是主题的状态以及观察者的数目 阅读全文
posted @ 2017-02-21 18:30 simpman 阅读(294) 评论(0) 推荐(0)
摘要:php 中的魔术方法:{$property}; } public function __call($parm1,$parm2) { print_r($parm1); print_r($parm2); } public function... 阅读全文
posted @ 2015-01-26 16:09 simpman 阅读(180) 评论(0) 推荐(0)
摘要:PSR是Proposing a Standards Recommendation(提出标准建议)的缩写,是由PHP Framework Interoperability Group(PHP通用性框架小组,简称PHP-FIG)发起的,通过他们命名就可以看出,这是个主要是针对框架通用性而做努力的开放性小... 阅读全文
posted @ 2014-12-20 09:41 simpman 阅读(328) 评论(0) 推荐(1)
摘要:在PHP中,strlen与mb_strlen是求字符串长度的函数,但是对于一些初学者来说,如果不看手册,也许不太清楚其中的区别。下面通过例子,讲解这两者之间的区别。$str='中文a字1符'; echo strlen($str);//字节个数 ,14echo mb_strlen($str,'UTF... 阅读全文
posted @ 2014-12-19 13:02 simpman 阅读(1648) 评论(1) 推荐(2)
摘要:utf8 与utf-8相信很多程序员刚开始也会有这样的疑惑,如题,我也是。其实,他们可以这样来区分。一、在php和html中设置编码,请尽量统一写成“UTF-8”,这才是标准写法,而utf-8只是在window中不区分大小写的写法而已,其次,大部分情况简写成“UTF8”或“utf8”程序也可以识别,... 阅读全文
posted @ 2014-12-18 10:39 simpman 阅读(1265) 评论(1) 推荐(0)
摘要:mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )如果subject是数组则返回数组,否则返回一个字符串。如果发生错误,返回 ... 阅读全文
posted @ 2014-12-16 09:56 simpman 阅读(687) 评论(0) 推荐(0)
摘要:上面使用了一个修饰符U,详见关于修饰符的介绍。PHP正则表达式修饰符的理解:在PHP正则表达式里面的修饰符可以改变正则的很多特性,使得正则表达式更加适合你的需要(注意:修饰符对于大小写是敏感的,这意味着"e"并不等于"E")。PHP正则表达式修饰符的种类及介绍:◆i :如果在修饰符中加上"i",则正... 阅读全文
posted @ 2014-12-14 10:57 simpman 阅读(773) 评论(0) 推荐(0)
摘要:顾名思义,换行符就是另起一行,回车符就是回到一行的开头,所以我们平时编写文件的回车符应该确切来说叫做回车换行符 '\n' 10 换行(newline)'\r' 13 回车(return)也可以表示为'\x0a'和'\x0d'.(16进制)在windows系统下,回车换行符号是"\r\n".但是在Li... 阅读全文
posted @ 2014-12-14 10:56 simpman 阅读(333) 评论(0) 推荐(0)
摘要:下面以安装curl为例,介绍具体安装步骤。 1.安装crul wgethttp://curl.haxx.se/download/curl-7.19.6.tar.gztar -zxvf curl-7.19.6.tar.gz cd curl-7.19.6 ./configure --prefix=/... 阅读全文
posted @ 2014-12-10 16:25 simpman 阅读(773) 评论(0) 推荐(0)
摘要:今天想彻底搞清楚php与mysql的关系,于是在php官方网站(http://php.net/manual/en/mysqli.installation.php)看了一下mysqli,mysql。感觉还是云里雾里,里面有提到:libmysqlclient与mysqlnd,看了下面的文章,清楚了很多。... 阅读全文
posted @ 2014-12-10 15:46 simpman 阅读(1102) 评论(0) 推荐(0)
摘要:传递参数有两种方式:第一种使用文件操作,STDOUT作为标准输出,STDIN作为标准输入使用fwrite($file,$string)作输出,使用fgets($file)作输入。这种应该算是继承自c语言。fwrite(STDOUT,"hello from cli,Enter your name:")... 阅读全文
posted @ 2014-12-09 22:02 simpman 阅读(371) 评论(0) 推荐(0)
摘要:在php运行期间,php引擎要对php源码进行处理,(词法分析,语法分析等)然后生成opcode。然后再运行。在这个阶段可以把opcode缓存起来,当下次需要运行这段程序的时候,就避免了再次 进行词法分析,语法分析,直接拿opcode来用。eAccelerator就是这样的程序。用vld查看php的... 阅读全文
posted @ 2014-08-13 16:40 simpman 阅读(718) 评论(1) 推荐(3)
摘要:1.尽量静态化: 如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍。 当然了,这个测试方法需要在十万级以上次执行,效果才明显。 其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静态方法可以直接... 阅读全文
posted @ 2014-07-25 11:49 simpman 阅读(168) 评论(0) 推荐(0)
摘要:在为台湾公司开发“保证金交易系统”的过程中,出现了这样的情况:一个间银行有n个操作员,可以同时在系统中下单,系统需要判断银行的保证金是否足够来决定是否可以下单成功。账号保证金足够,正常下单,账号保证金不足则给出提示。当n个操作员同时操作时,会有这样的情况发生:分成两个阶段:1、判断保证金 2、进行交... 阅读全文
posted @ 2014-06-19 15:57 simpman 阅读(1784) 评论(0) 推荐(0)
摘要:http请求有get,post。php发送http请求有三种方式[我所知道的有三种,有其他的告诉我]。file_get_contents();详情见:http://www.cnblogs.com/simpman/p/3419989.htmlcurl发送请求。fsocket发送。下面说使用curl发送... 阅读全文
posted @ 2014-02-14 16:43 simpman 阅读(28207) 评论(1) 推荐(6)
摘要:stream_context_create作用:创建并返回一个文本数据流并应用各种选项,可用于fopen(),file_get_contents()等过程的超时设置、代理服务器、请求方式、头信息设置的特殊过程。函数原型:resourcestream_context_create([ array $o... 阅读全文
posted @ 2013-11-12 17:55 simpman 阅读(4838) 评论(0) 推荐(1)
摘要:之前在一个叫魔法实验室的博客中看过一篇《php session原理彻底分析》的文章,作者从session的使用角度很好阐述了在代码运行过程中,每个环节的变化以及相关参数的设置及作用。本来想把原文转帖过来,但是原博客被关闭了。不知是这次大范围的重新备案,还是其他什么原因所致。通过百度快照找到一些原文资料,没找到的将按之前的理解重新整理,以使大家对session能有更多了解。楔子:Session大白话Session,英文翻译为“会话”,两个人聊天,从第一句问好,到最后一句再见,这就构成了一个会话。PHP里的session主要是指客户端浏览器与服务端数据交换的对话,从浏览器打开到关闭,一个最简单的会 阅读全文
posted @ 2013-11-05 17:11 simpman 阅读(526) 评论(0) 推荐(0)
摘要:1、传递任意数量的函数参数 我们在.NET或者JAVA编程中,一般函数参数个数都是固定的,但是PHP允许你使用任意个数的参数。下面这个示例向你展示了PHP函数的默认参数:12345678910111213141516171819// 两个默认参数的函数function foo($arg1 = ”, $arg2 = ”) {echo “arg1: $arg1\n”;echo “arg2: $arg2\n”;}foo(‘hello’,'world’);/* 输出:arg1: helloarg2: world*/foo();/* 输出:arg1:arg2:*/ 下面这个示例是PHP的不定参数 阅读全文
posted @ 2013-08-10 01:26 simpman 阅读(502) 评论(0) 推荐(0)
摘要:http://blog.csdn.net/phpme/article/details/513703http://hi.baidu.com/houqiang_hq/item/5e7352162c4cbbc439cb30d2http://www.cppblog.com/kongque/archive/2010/01/07/105090.aspx 阅读全文
posted @ 2013-08-05 02:52 simpman 阅读(172) 评论(0) 推荐(0)
摘要:数组分割array_chunk();比较数组1.array_diff() array_diff_assoc()2.array_filter();functionodd($var){ return($var%2==1); } functioneven($var){ return($var%2==0); } $arrayarray1=array("a"=>1,"b"=>2,"c"=>3,"d"=>4,"e"=>5); $arrayarray2=array(6,7,8,9 阅读全文
posted @ 2013-07-24 22:46 simpman 阅读(266) 评论(0) 推荐(0)