Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/270.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 静态和非静态函数类结合在一起_Php - Fatal编程技术网

Php 静态和非静态函数类结合在一起

Php 静态和非静态函数类结合在一起,php,Php,有人能给我解释一下,并为一个静态类和非静态类做一些例子吗 比如: 我在网上找不到任何东西 感谢第一部分(例如App::MySQL(),App::User())调用一个类的静态方法以返回一个单例实例(意味着如果该类的实例存在,则返回它,否则创建一个新实例并返回它),这将确保该类最多有一个实例。然后调用它的方法或获取它的属性(第二部分:->insert(),->name)尝试搜索。函数不必是非静态的。如果insert函数定义为static App::MySQL()->insert(); Ap

有人能给我解释一下,并为一个静态类和非静态类做一些例子吗

比如:

我在网上找不到任何东西

感谢

第一部分(例如App::MySQL(),App::User())调用一个类的静态方法以返回一个单例实例(意味着如果该类的实例存在,则返回它,否则创建一个新实例并返回它),这将确保该类最多有一个实例。然后调用它的方法或获取它的属性(第二部分:->insert(),->name)

尝试搜索。函数不必是非静态的。如果
insert
函数定义为
static
App::MySQL()->insert();

App::User()->name;
<?php

class App {

    public static function MySQL() {
        return new MySQL();
    }
}

class MySQL {

    public function insert() {
        echo "inserting some stuff\n";
    }

}


App::MySQL()->insert();
ivo@atmycomputer ~$ php test.php 
inserting some stuff
ivo@atmycomputer ~$