doufei1988 2010-12-13 10:58
浏览 41
已采纳

php:何时在include / require_once之后使用范围解析符号(::)?

All,

I'd like to understand

I'm looking at this code sample from w3Style's front controller tutorial:

index.php

<?php
define("PAGE_DIR", dirname(__FILE__) . "/pages");
require_once "FrontController.php";
FrontController::createInstance()->dispatch();

Why is the :: required in this case?

Does it have to do with the flexibility of one day creating a different class in "FrontController.php" which would also have a method of this name? Or is it to address the case when one would have several includes of different classes, all incorporating some same method name?

Thanks,

JDelage

  • 写回答

4条回答 默认 最新

  • douquan1015 2010-12-13 11:01
    关注

    FrontController seems to be a Singleton class.

    The createInstance() method is called statically (hence the ::) and creates an object instance. Then, the dispatch() method is executed on the resulting object (hence the ->).

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥20 iOS绕地区网络检测
  • ¥15 python验证码滑块图像识别
  • ¥15 根据背景及设计要求撰写设计报告
  • ¥15 QT6颜色选择对话框显示不完整
  • ¥20 能提供一下思路或者代码吗
  • ¥15 用twincat控制!
  • ¥15 请问一下这个运行结果是怎么来的
  • ¥15 单通道放大电路的工作原理
  • ¥30 YOLO检测微调结果p为1
  • ¥15 DS18B20内部ADC模数转换器