ThinkPHP의 여러 파일 로딩 방법

풀어 주다: 2020-04-13 09:07:24
앞으로
3217명이 탐색했습니다.

ThinkPHP의 여러 파일 로딩 방법

ThinkPHP 시스템은 세 가지 파일 로딩 방법을 제공합니다:

함수 라이브러리 양식 로딩:

함수 라이브러리에는 ThinkPHP의 세 가지 범주가 포함됩니다: 시스템 함수 라이브러리 파일(functions.php), 애플리케이션 수준 함수 라이브러리 파일, 그룹 수준 함수 파일.

이 세 가지 유형의 함수 라이브러리 파일 중 시스템 함수 라이브러리 파일(functions.php)만 시스템에 기본적으로 존재하고 나머지 두 가지 유형의 함수 라이브러리 형식은 직접 만들어야 합니다.

동시에 시스템 함수 라이브러리 파일의 이름은 function.php이고 다른 두 가지 유형의 함수 라이브러리 형식 파일의 이름은 function.php라는 점에 유의하세요.

사례: 함수 라이브러리 양식을 사용하여 사용해야 하는 함수를 정의하세요. 함수 이름: testfunction

<?php
 
function testfunction(){
	echo &#39;testfunction&#39;;
}
    public function test(){
        testfunction();
    }
로그인 후 복사

표시 결과:

ThinkPHP의 여러 파일 로딩 방법

정의된 함수 라이브러리 파일의 함수는 사용 시 PHP 내장 함수 구문의 요구 사항을 따라야 합니다. 함수 이름(매개 변수)을 직접 작성하면 됩니다.

지침:

첫 번째: function.php를 도입할 필요가 없습니다. 시스템은 실행 중에 자동으로 function.php 파일을 도입합니다.

두 번째: 함수가 애플리케이션 수준 함수 라이브러리 파일에 정의된 경우, 그러면 모든 그룹(전체 애플리케이션)에서 사용할 수 있습니다. 특정 그룹의 함수 라이브러리 파일에 함수가 정의되어 있으면 현재 그룹에서만 사용할 수 있습니다. 그렇지 않으면 함수가 정의되지 않은 것으로 보고됩니다.

구성 항목을 통한 동적 로딩:

시스템 실행 과정에서 App.class.php

    static public function init() {
        // 加载动态应用公共文件和配置
        load_ext_file(COMMON_PATH);
로그인 후 복사

load_ext_file 함수가 이 방법으로 실행됩니다.

이 메소드는 PHP에 내장된 메소드는 아니지만 시스템 함수 라이브러리 파일에 정의되어 있습니다:

ThinkPHP의 여러 파일 로딩 방법

function load_ext_file($path) {
    // 加载自定义外部文件
    if($files = C(&#39;LOAD_EXT_FILE&#39;)) {
        $files      =  explode(&#39;,&#39;,$files);
        foreach ($files as $file){
            $file   = $path.&#39;Common/&#39;.$file.&#39;.php&#39;;
            if(is_file($file)) include $file;
        }
    }
로그인 후 복사

확장: C 메소드

C 메소드도 빠른 메소드 중 하나이며 해당 기능은 다음과 같습니다. ThinkPHP 항목에서 구성을 작동하려면:

C(name,value); 구성 항목 이름의 값을 설정합니다. 값은 value

C(name)입니다. 구성 항목 이름

C()의 값을 읽습니다. ; 모든 구성 항목 읽기

구성 항목:

애플리케이션 수준 구성 파일에서 구성 항목 LOAD_EXT_FILE을 정의하고 info.php 파일을 소개합니다.

    &#39;load_ext_file&#39;         =>  &#39;info&#39;,     
    //包含文件名的字符串,多个文件名通过使用英文半角逗号分割
로그인 후 복사

응용 프로그램 함수 라이브러리 파일 디렉터리에 info.php를 정의합니다

<?php
 
function getInfo(){
	phpinfo();
}
로그인 후 복사

ThinkPHP의 여러 파일 로딩 방법

테스트:

    public function test(){
        getInfo();
    }
로그인 후 복사

표시 결과:

ThinkPHP의 여러 파일 로딩 방법

동일한 파일이 시스템 캡슐화 방식으로 처리되었다는 점에 유의하세요. 따라서 특정 함수를 사용하는 경우에는 별도로 파일을 import할 필요 없이 사용할 함수명을 함수 라이브러리 파일 형태로 직접 작성하고 해당 매개변수만 전달하면 됩니다.

로드 방법을 통한 로드

구문: ​​

load(‘@/不带后缀的php文件名’);
로그인 후 복사

파일은 그룹 수준의 함수 라이브러리 디렉터리에 있어야 하며 정의된 그룹에서만 사용할 수 있다는 점에 유의하세요.

사례: 그룹 디렉토리에 hello.php 파일을 직접 생성한 후, 그 안에 함수를 정의한 후, load 메소드를 사용하여 해당 함수를 로드하고 사용하세요.

<?php
 
function sayhello($who){
	echo &#39;hello &#39; . $who;
}
로그인 후 복사

hello.php 파일을 로드하려면 컨트롤러의 로드 방법을 사용하세요:

    public function test(){
        //load
        load(&#39;@/hello&#39;);
        //调用函数
        sayhello(world);
    }
로그인 후 복사

표시 효과:

ThinkPHP의 여러 파일 로딩 방법

참고: 위의 세 가지 파일 로드 방법은 실제 개발 중에 사용할 수 있지만 일반적으로 첫 번째( 함수 라이브러리를 통해 자동으로 로드됩니다).

추천 튜토리얼: thinkphp 튜토리얼

위 내용은 ThinkPHP의 여러 파일 로딩 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:csdn.net
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿