You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

请问Laravel框架中‘::’双冒号符号的含义是什么?

在Laravel中::双冒号的含义

嘿,这个问题问得很实在!在PHP(包括Laravel框架)里,::这个双冒号叫做范围解析操作符(大家也常直接叫它静态调用操作符),核心作用就是直接访问类的静态成员——不管是静态方法、静态属性还是类常量,都靠它来实现调用。

拿你贴的这段Laravel迁移代码举例:

public function up() { 
    Schema::create('table', function (Blueprint $table) { 
        $table->bigIncrements('id'); 
        $table->timestamps(); 
    }); 
}

这里的Schema::create()就是最典型的用法:

  • Schema是Laravel封装的数据库操作类,create是它的静态方法,你不需要先创建Schema类的实例(也就是不用写new Schema()),直接通过类名::静态方法名就能调用这个方法,快速创建数据库表。
  • 这种写法在Laravel里随处可见,比如DB::table()操作数据库、Route::get()定义路由,都是用了同样的逻辑——框架把高频使用的功能封装成静态方法,让代码更简洁直观,不用每次都去实例化类。

顺带提一句,::不止能调用静态方法,还能访问类的静态属性和常量,比如:

class AppConfig {
    public static $appName = "MyLaravelApp";
    const APP_VERSION = "2.0";
}

echo AppConfig::$appName; // 用::访问静态属性
echo AppConfig::APP_VERSION; // 用::访问类常量

内容的提问来源于stack exchange,提问作者Yude Mongz

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.12 04:36:55