基于psr的规范,使用命名空间和spl_autoload_register()来实现自动加载
文件结构:
|--Api
|--Account.php
|--User.php
|--Service
|--Login.php
|--User.php
|--Application.php
Application.php
<span style="color: #000000;">php </span><span style="color: #0000ff;">use</span><span style="color: #000000;"> Api\User; </span><span style="color: #0000ff;">use</span> Service\User <span style="color: #0000ff;">as</span><span style="color: #000000;"> User2; </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Application{ </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> main(){ self</span>::<span style="color: #000000;">registe(); </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> User(); </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> User2(); } </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> registe(){ spl_autoload_register(</span>"Application::loadClass"<span style="color: #000000;">); } </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">static</span> <span style="color: #0000ff;">function</span> loadClass(<span style="color: #800080;">$class</span><span style="color: #000000;">){ </span><span style="color: #800080;">$class</span>=<span style="color: #008080;">str_replace</span>('\\', '/', <span style="color: #800080;">$class</span><span style="color: #000000;">); </span><span style="color: #800080;">$class</span>="./".<span style="color: #800080;">$class</span>.".php"<span style="color: #000000;">; </span><span style="color: #0000ff;">require_once</span> <span style="color: #800080;">$class</span><span style="color: #000000;">; } } Application</span>::main();
Api\User.php
<span style="color: #000000;">php namespace Api; </span><span style="color: #0000ff;">use</span><span style="color: #000000;"> Service\Login; </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> User{ </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> __construct(){ </span><span style="color: #0000ff;">echo</span> "User类<br>"<span style="color: #000000;">; </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Login(); </span><span style="color: #0000ff;">new</span><span style="color: #000000;"> Account(); } }</span>
Api\Account.php
<span style="color: #000000;">php namespace Api; </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Account{ </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> __construct(){ </span><span style="color: #0000ff;">echo</span> "Account类<br>"<span style="color: #000000;">; } }</span>
Service\Login.php
<span style="color: #000000;">php namespace Service; </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> Login{ </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> __construct(){ </span><span style="color: #0000ff;">echo</span> "Login类<br>"<span style="color: #000000;">; } }</span>
Service\User.php
<span style="color: #000000;">php namespace Service; </span><span style="color: #0000ff;">class</span><span style="color: #000000;"> User{ </span><span style="color: #0000ff;">public</span> <span style="color: #0000ff;">function</span><span style="color: #000000;"> __construct(){ </span><span style="color: #0000ff;">echo</span> "Service下的User类<br>"<span style="color: #000000;">; } }</span>
结果:

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

PhpStorm Mac version
The latest (2018.2.1) professional PHP integrated development tool

Safe Exam Browser
Safe Exam Browser is a secure browser environment for taking online exams securely. This software turns any computer into a secure workstation. It controls access to any utility and prevents students from using unauthorized resources.

SublimeText3 English version
Recommended: Win version, supports code prompts!

Dreamweaver CS6
Visual web development tools

SublimeText3 Mac version
God-level code editing software (SublimeText3)
