>PHP 프레임워크 >ThinkPHP >thinkphp5와 thinkphp3의 차이점

thinkphp5와 thinkphp3의 차이점

藏色散人
藏色散人원래의
2019-06-29 10:56:434749검색

thinkphp5와 thinkphp3의 차이점

thinkphp5와 thinkphp3의 차이점

관계자는 5를 사용하기 위해 3가지 생각을 사용하지 말라고 말했습니다. 이렇게 말하면 두 가지 공식 제품이며 버전 반복과 관련이 없습니다. 디렉터리 구조가 다르며 일부 함수 이름도 다릅니다. 전통적인 mvc 웹사이트라면 tp3.2를 사용하세요. 인터페이스를 만드는 경우 tp5를 사용하십시오. 이전과 이후의 주요 차이점은 뷰 처리입니다.

모델 인스턴스화

TP5는 모델을 자동으로 인스턴스화하는 M 메서드를 취소하고 새로운 인스턴스화 모델 메서드를 사용합니다. 자동 인스턴스화가 없으면 사용자가 직접 새 모델 클래스를 생성하고 이를 인스턴스화해야 합니다. 이는 D 방법과 다소 유사합니다. D 메소드와 유사한 기능을 가진 모델 메소드가 있는데, 이는

U 메소드

로 완전히 대체될 수 있습니다. U 메소드는 TP에 경로를 생성하는 내장 메소드입니다. url 메소드로 완전히 대체

IS_GET 및 IS_POST 메소드는 TP5

에서 취소되었습니다. 계속 사용하려면 다음과 같이 프로젝트에서 사용자 정의할 수 있습니다.

 define('IS_GET',Request::instance()->isGet());
 define('IS_POST',       Request::instance()->isPost());

원래 TP의 I 메소드

이전 TP에는 요청 매개변수 수신을 위한 I 메소드가 있었는데 현재는 입력 메소드로 대체 가능

새로운 메소드

주의해야 할 점은 현재 단일 신규 메소드가 저장 메소드로 변경된 것입니다. 이전 업데이트 방법과 업데이트 방법도 다르다는 점에 유의해야 합니다. 새로 추가하려면 save를 직접 사용할 수 있고 업데이트하려면 isUpdate(true)를 추가해야 합니다

model("")->isUpdate(true)->save($data);

TP5와 TP 원본 버전의 가장 큰 기능적 차이점은 이제 거의 모든 데이터베이스 쿼리가 개체를 반환한다는 것입니다

.
$menuurl->find($menu_id);//此方法返回一个对象,可以使用->toArray()方法转换为数组
$this->where($condition)->order($order)->select();//此方法返回一个对象数组,所以要使用数据也必须转换,当然可以直接用对象

C 방법은 구성 방법 대체입니다.

데이터베이스 구성은 데이터베이스.php에만 있습니다. 매개변수를 얻으려면

config('database.prefix')

를 사용하세요. 구성 방법은 현재입니다.

전역적으로 교체해야 하는 경우 구성 파일에

'view_replace_str'  =>  [
    '__PUBLIC__'=>'/public/',
    '__ROOT__' => '/',
]

를 직접 추가하거나 상수 구성을 직접 사용할 수 있습니다.

{$Think.config.PUBLIC}

기본 엔진 태그를 수정할 수 있습니다. 즉, 이전 버전입니다. a8093152e673feb7aba1828c43532094는 계속 사용할 수 있습니다.

        // 模板引擎普通标签开始标记
        'tpl_begin'    => '{',
        // 模板引擎普通标签结束标记
        'tpl_end'      => '}',
        // 标签库标签开始标记
        'taglib_begin' => '{',
        // 标签库标签结束标记
        'taglib_end'   => '}',

이 기사는 ThinkPHP 프레임워크 기술 기사 칼럼에서 발췌한 것입니다: http: //www.php.cn/phpkj/thinkphp/

위 내용은 thinkphp5와 thinkphp3의 차이점의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.