狼骑舞者

狼骑舞者

这家伙有点懒,还没写个性签名!

  • 财富值69
  • 威望值0
  • 总积分169

个人信息

  • 2016-04-10 已签到
    连续签到1天,获得了5个金钱
  • 2016-03-27 已签到
    连续签到2天,获得了10个金钱
  • 2016-03-26 已签到
    连续签到1天,获得了5个金钱
  • 2016-03-17 已签到
    连续签到1天,获得了5个金钱
  • 2016-03-15 已签到
    连续签到1天,获得了5个金钱
  • 2016-03-11 已签到
    连续签到1天,获得了5个金钱
  • 赞了回复

    这个问题乍一看 觉得很简单... 天天都在用的东西 这有什么好说的?

    仔细一琢磨, 要想原原本本的说清楚 还真是不知从何说起.

    占坑 晚点有空回答

    一, 第一个问题, 需不需要把文件导入进来?

    答案是 : 需要!

    但是在各种框架内, 你不会直观的感受到这一点, 因为都实现自动加载了.

    早期__autoload 后来 又增强版spl_autoload

    现代框架都是遵循composer自动载入标准完成

    composer的自动加载标准又和namespace结合了起来, 这个后面补充.

    二. 第二个问题, use的作用域是什么, 有多广?

    比如 : 同一个服务器上有A站和B站,A站下A\a ,B站有B\b ,还可以在B\b.php里面use A\a吗?`

    答案是 : 不知道怎么回答了 = =! 只能说和几个站毫无关系...

    在当前请求周期内, 只要先加载到了A\a, 那么随后你都可以use A\a;

    这和几个项目没关系, 和文件摆放位置没关系

    !!! 只和 当前请求内, 你use的时候 有没有事先声明并include进来有关系;

    如果非要说出作用域? 只能看每次请求的实际情况了...

    三. 补充

    在各种现代框架内(遵循了composer标准的)

    一般 只要你use A\a; 就能自动加载进A\a (当然 你确实有声明);

    并不用小心翼翼的担心 我use A\a时候, 有没有include进来呀

    因为composer就是按照namespace来自动加载类的.

    当然并不绝对(未遵循该标准的, composer也提供有自动加载方式)

    具体的标准去查一下资料吧 这里就不说了 已经很啰嗦了

  • 2016-03-05 已签到
    连续签到2天,获得了10个金钱
  • 2016-03-04 已签到
    连续签到1天,获得了5个金钱
助理 等级规则
169/200
资料完整度
10/100
用户活跃度
0/100

Ta的关注

3

Ta的粉丝

3

Ta的访客

4