Yii는 고성능 PHP5 웹 애플리케이션 개발 프레임워크입니다. 간단한 명령줄 도구인 yiic은 웹 애플리케이션 코드 프레임워크를 신속하게 생성할 수 있습니다. 개발자는 생성된 코드 프레임워크를 기반으로 비즈니스 로직을 추가하여 애플리케이션 개발을 신속하게 완료할 수 있습니다.
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 중국어 웹사이트의 기타 관련 기사를 참조하세요!