【PHP类中动态方法和静态方法调用写法的不解,希望版主大大指导】教程文章相关的互联网学习教程文章

类的静态方法在继承中的使用,不大明白,self和this如何转换

类的静态方法在继承中的使用,不大明白,self和this怎么转换?class A //核心{ public $db; public function __construct(){ $this->db=new B(); } public function find(){ return $this->db->b1(); }}class B //数据库{ public function b1(){ return true; } public function b2(){ return false; }}//**********分隔符***********class C extends A //第三方类{ static function test(){ return self::find(); }}/...

php中静态方法static和非静态方法效率对照

php中静态方法static和非静态方法效率对比今天在看这篇文章的时候http://jingyan.baidu.com/article/6b97984d7892d21ca2b0bfc2.html发现第一句是这个如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍。实践是检验代码执行效率的唯一标准,于是趁着下班回家有点时间,做了个小测试:先上测试代码(如果有不对的地方,请大家指正哈):测试环境:/test # php -vPHP 5.4.24 (cli) (built: Jan 19 2014 21:32...

PHP中的一个DB类中的成员方法为啥可以当作静态方法使用!求指点

PHP中的一个DB类中的成员方法为什么 可以 当作静态方法使用!求指点?这是一个db.php文件,里面是一个DB类class DB{ function &object() { static $db; if (empty($db)) { $db = new pgsql(); } return $db; } function query($sql, $transaction = false) { $db = & DB::object(); return $db->query($sql, $transaction); }}我想问的是 ...

种外边的独立的自定义函数和类中静态方法有啥区别啊

类外边的独立的自定义函数和类中静态方法有啥区别啊?function test(){ ……… return $result; }function test1(){ ……… return $result; }……function testN(){ ……… return $result; }class funs{ static function test(){ ……… return $result; } static function test1(){ ……… return $result; } …… static function testN(){ ……… return $result; }}$a = test();$b = funs::test()……写在类外边的单...

PHP静态调用非静态方法的应用分析_php实例【图】

静态调用非静态方法!!这在java,c#中是不可想象的,也是绝对不行的。这样的错误在这些语言中会在编译阶段就被指出错误的。但是对于php这样的动态语言呢?首先这个是语法没有错误的,php –l 找不出错误来的。如果运行呢?先看一个例子 代码如下:class myClass { private $name = "myClass"; public function echoName(){ echo $this->name; } public function getName(){ $this->echoName(); ...

PHP实现伪静态方法汇总_php实例

PHP伪静态的使用主要是为了隐藏传递的参数名,下面给大家介绍php实现伪静态的方法,具体详情请看下文。 说起伪静态的实现方案,你是不是很爽快的回答"简单,配置下apache的重写规则就行了嘛"但是你有没有发现这种情况,你最近弄了很多新功能,每天上几个新功能,每天都有好多伪静态配置,才开始两天运维同学还乐意配合,过两天运维同学就要骂了。你麻痹,脑残为什么不一次搞完,天天麻烦我。但是了,你要上线啊,不得不苦逼的求运维...

laravel-php非静态方法如何实现静态调用?【图】

最近看laravel4的代码,发现其中Config类(Repository)中的set和get方法并不是静态方法,但调用时却可以使用Config::get(app.url), Config::set(app.url, http://xxx.xx)等请问这个是如何实现的? 回复内容: 最近看laravel4的代码,发现其中Config类(Repository)中的set和get方法并不是静态方法,但调用时却可以使用Config::get(app.url), Config::set(app.url, http://xxx.xx)等请问这个是如何实现的? 请看依次下面代码。Ste...

php静态方法问题【图】

private function getlong() {$result = unpack('Vlong', fread(self::$fp, 4));return $result['long']; } getlong 非静态方法 为什么在getClientLocation 里可以用self::getlong() 访问 回复内容:private function getlong() {$result = unpack('Vlong', fread(self::$fp, 4));return $result['long']; } getlong 非静态方法 为什么在getClientLocation 里可以用self::getlong() 访问 __callStatic其实php的设计是可以用::方式调...

php-框架-PHP,什么时候用到静态方法最为合适?

现在想写一个基本的框架练练手,也参考了几个框架,问题如下: 1. 什么时候用到静态方法最为合适? 2. 是不是静态方法用的越多,越不像面向对象了?补充一下:是不是当我们有很多个属性全局不变的时候,但是多个地方用到的时候,这个时候写成静态类,比如操作路由。。我理解的对吗?回复内容:现在想写一个基本的框架练练手,也参考了几个框架,问题如下: 1. 什么时候用到静态方法最为合适? 2. 是不是静态方法用的越多,越不像面...

静态方法的访问

class A {public static function say($words){return $words;} }$a = new A;# 访问方法1 echo A::say('hi');# 访问方法2 echo $a::say('hi');# 访问方法3 echo $a->say('hi'); 请问, 方法2和方法3是正常写法吗? 手册上查不到这两种写法.但是实际中确实会用到后面两种写法:传递model变量到视图, 因为使用了命名空间, 实在不想 \name\space\SomeModel::staticMethod() 这么用, 或先use导入; 就想图个省事: $model::staticMethod()。...

php静态方法到底应不应该使用?

起因是因为有人建议尽量别使用静态方法,但是现在有的框架(laravel5 & yii2又大量使用静态方法,让我产生了矛盾。度娘告诉我静态方法会一直占用内存,但是速度会比动态方法快;动态方法速度慢但运行完成后内存就销毁了。。。测试环境如下(好像环境没有什么卵用?):shellLinuxMint 17PHP 5.6.9 (cli) (built: Jun 22 2015 00:06:37) 测试代码如下,很不专业的样子,望斧正:php'; $begin = microtime(1); for ($i=0; $i dongtai...

直接用静态方法调用和单例模式的区别是什么?

如题,静态方法是在内存中只初始化一次,而单例模式也是保证在内存中只实例化一个对象,那这两者的区别是什么?我直接把数据库链接放在静态里面不就行了吗回复内容:如题,静态方法是在内存中只初始化一次,而单例模式也是保证在内存中只实例化一个对象,那这两者的区别是什么?我直接把数据库链接放在静态里面不就行了吗一个可继承,一个不可继承。其实没有搞明白题主想问什么。 单例模式是针对类的,静态方法是方法而已,跟对象没...

用把逻辑放到工具类的静态方法中而故意弱化model的逻辑有什么好处?

新公司流行把逻辑写在工具类(只含static方法),贫血model除了携带数据基本只用来校验数据(框架要求和一些历史遗留). 之前也听过有几次有违反OO原则把代码重写成一堆过程脚本来优化项目的事例。 但想不清楚这样做好处到底是什么,是业务频繁变动的环境下的一个新实践还是说这只是一种反模式。 背景: 快速发展的且有一定规模的创业公司 业务为核心的公司,迭代快,需求多 开发的水平不错 这个仅仅是PHP大部门内流行的做法回复内容:...

php静态方法释放的问题

想问一下php静态方法 是否常驻内存 在什么时候会释放 是否请求结束,脚本跑完就释放了 还是会一直跟随服务器的生命周期?回复内容:想问一下php静态方法 是否常驻内存 在什么时候会释放 是否请求结束,脚本跑完就释放了 还是会一直跟随服务器的生命周期?http://www.nowamagic.net/librarys/veda/detail/1377

静态方法-php代码重构疑惑,求解答

刚写完一个后台的一部分功能,现在打算重构一下代码,但是有些疑问,不知道该怎么处理了。 功能描述: 1.用户下面有设备和分组,设备可以被分组,然后分组之间的设备可以相互透传数据。设备上线,查找redis有没有缓存过用户、分组、设备,如果缓存过只是简单更新一下缓存的个别数据,如果没有那么先从数据库里面查找,查找后redis缓存。 2.现在是分别用UserCache、GroupCache、DeviceCache 三个类,实现缓存的读写,UserDB、G...

静态方法 - 相关标签