>  기사  >  PHP 프레임워크  >  yii1과 yii2의 차이점은 무엇입니까?

yii1과 yii2의 차이점은 무엇입니까?

青灯夜游
青灯夜游원래의
2019-12-23 17:43:134200검색

Yii는 고성능 PHP5 웹 애플리케이션 개발 프레임워크입니다. 간단한 명령줄 도구인 yiic은 웹 애플리케이션 코드 프레임워크를 신속하게 생성할 수 있습니다. 개발자는 생성된 코드 프레임워크를 기반으로 비즈니스 로직을 추가하여 애플리케이션 개발을 신속하게 완료할 수 있습니다.

yii1과 yii2의 차이점은 무엇입니까?

Yii2.0 버전 프레임워크는 완전히 재작성되었으며, 1.1 버전과 2.0 버전 사이에는 꽤 많은 차이점이 있습니다. [추천 학습: Yii 시작하기 튜토리얼]

그럼 yii1과 yii2의 차이점은 무엇인가요?

Yii 2.0에는 PHP 5.4 이상이 필요합니다. 이는 Yii 1.1에서 요구하는 PHP 5.2에 비해 크게 개선된 것입니다.

1. 애플리케이션 인스턴스는 app()을 호출하지 않고 $app에 액세스하기 위해 전역 명명 변수를 직접 사용합니다.

2. Yii2 뷰 계층의 중요한 변화는 MVC 패턴 구현을 더욱 완벽하게 만드는 뷰 클래스의 도입입니다. 이에 따라 관련 프리젠테이션 레이어 하위 클래스는 새로운 뷰 클래스에 의해 관리됩니다. 예를 들어 theme: Yii::app()->theme->baseUrl은 Yii::$app->view->로 업데이트되어야 합니다. ; 테마->baseUrl 또는 $this->테마->baseUrl.

3. Yii2에서는 리소스 패키지 개념이 도입되면서 리소스 참조 방식이 크게 바뀌었습니다.

리소스를 소개하는 방법에는 두 가지가 있는데, 하나는 자산 디렉토리의 AppAsset 클래스를 이용하는 것이고, 다른 하나는 Yii1과 유사한 등록 방법을 이용하는 것입니다.

Yii::app()->getClientScript() 메서드를 더 이상 사용할 수 없습니다. 예를 들어 JS 스크립트 파일을 페이지에 동적으로 등록하려는 경우 변경 사항은 다음과 같습니다. 🎜🎜#

Yii: :app()->getClientScript()->registerScriptFile('...')은 Yii::$app->view->registerJsFile('..)로 수정되었습니다. .'),

#🎜 🎜#또는 $this->registerJsFile('...').

4. 데이터베이스

예를 들어, user_id가

yii1:

User::인 레코드를 쿼리합니다. 모델 ()->find('user_id=:user_id',[':user_id'=>$user_id]);

yii2:

User::find ( )->where('user_id=:user_id',[':user_id'=>$user_id])->one();

여러 레코드 쿼리:

# 🎜🎜#yii1:

User::model()->findAll('status=:status',[':staus'=>$status]);

#🎜 🎜#yii2:

User::find()->where('status=:status',[':staus'=>$status])->all();# 🎜🎜#

또한 yii2는 asArray() 메서드도 제공하며 직접 쿼리 결과는 배열입니다.

User::find()->where('status= :status',[ ':staus'=>$status])->asArray()->all();

초보자라면 yii2를 직접 배워보는 것을 추천합니다 .

위 내용은 yii1과 yii2의 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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