鸣谢

好书推荐: >>更多
PHP通过反射方法调用执行类中的私有方法 时间:2017-08-23 16:17:40 点击:28
下面我们来看一篇关于PHP通过反射方法调用执行类中的私有方法,希望这篇教程能够帮助到各位朋友,有兴趣的可以进来看看。PHP 5 具有完整的反射 API,添加了对类、接口、函数、方法和扩展进行反向工程的能力。下面我们演示一下如何通过反射,来调用执行一个类中的私有方法:<?php //MyClass这个类中包含了一个名为myFun的私有方法 class MyClass { private $tmp = 'hello'; private function myFun() { echo $this->tmp . ' ' . 'world!'; } } //通过类名MyClass进行反射 $ref_class = new ReflectionClass('MyClass'); ...
php在foreach中使用引用赋值&可能遇到的问题 时间:2017-07-12 13:20:45 点击:29
楼主在写项目的时候,由于初涉PHP的赋值引用操作,觉得这个功能非常强大,用时一时爽,没有深入了解过其中的原理,导致了一些当时觉得不可思议的BUG,废话不都说,我举个例子详细的描述一下这个问题。代码:$test=array('a','b','c'); foreach($test as &$value){ echo $value; } echo $value; foreach($test as $value){ echo $value; } echo $value;运行结果:'a','b','c''c''a','b','b''b'解释:在第一个foreach中,我们使用了赋...
使用Redis实现抢购的一种思路 时间:2016-11-11 17:54:24 点击:86
抢购是如今很常见的一个应用场景,主要需要解决的问题有两个:1 高并发对数据库产生的压力2 竞争状态下如何解决库存的正确减少(“超卖”问题)对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。重点在于第二个问题,我们看看下面一种常规的实现代码:<?php require('predis/src/Autoloader.php'); $redis = new PredisClient(array( 'scheme' => 'tcp', 'host' => '127.0.0.1', 'port' => '6379' )); //redis 登录 $redis->auth('123456'); ...
使用grep --exclude/--include 不能通过某些文件 时间:2016-10-24 17:22:56 点击:175
我在找的字符串" foo= " ( 无引号) 的文本文件中的一个目录树。 是在一个普通Linux机器,我有bash shell :grep -ircl "foo="*在目录中也有很多二进制文件中匹配" foo= " 。 因为这些搜索结果或者减速无关,我想要跳过这些文件( 主要是搜索grep JPeg和PNG图像) 。 我怎么能做到?我知道有" exclude=PATTERN和include=PATTERN选项,但是模式是什么格式? grep的man page说,--include=PATTERN Recursein directories only searching file matching PATTERN.--exclude=PATTERN Recursein directories skip file m...
Linux查看进程运行的完整路径方法 时间:2016-08-26 10:58:51 点击:94
通过ps及top命令查看进程信息时,只能查到相对路径,查不到的进程的详细信息,如绝对路径等。这时,我们需要通过以下的方法来查看进程的详细信息:Linux在启动一个进程时,系统会在/proc下创建一个以PID命名的文件夹,在该文件夹下会有我们的进程的信息,其中包括一个名为exe的文件即记录了绝对路径,通过ll或ls –l命令即可查看。ll /proc/PID 说明:cwd符号链接的是进程运行目录;exe符号连接就是执行程序的绝对路径;cmdline就是程序运行时输入的命令行命令;environ记录了进程运行时的环境变量;fd目录下是进程打开或使用的文件的符号连接。
MySQL索引原理及慢查询优化 时间:2016-05-27 16:33:46 点击:140
MySQL凭借着出色的性能、低廉的成本、丰富的资源,已经成为绝大多数互联网公司的首选关系型数据库。虽然性能出色,但所谓“好马配好鞍”,如何能够更好的使用它,已经成为开发工程师的必修课,我们经常会从职位描述上看到诸如“精通MySQL”、“SQL语句优化”、“了解数据库原理”等要求。我们知道一般的应用系统,读写比例在10:1左右,而且插入操作和一般的更新操作很少出现性能问题,遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化显然是重中之重。本人从13年7月份起,一直在美团核心业务系统部做慢查询的优化工作,共计十余个系统,累计解决和积累了上百个慢查询案例。随着业务的复杂性提升,遇到的问题千奇百怪,五花八门,匪夷所思。本文旨在以开发工程师的角度来解释数据库索引的原理和如何优化慢查询。一个慢查询引发的思考select count(*) from task ...