1.4 업그레이드 안내
백업을 제대로 해두고 아래 명령어를 실행하여 업그레이드하세요
composer require workerman/webman-framework ^1.4.7 && composer require webman/console ^1.2.12 && php webman install
주의
업그레이드에 실패한다면 composer 프록시를 사용했을 수 있습니다. 아래 명령어를 사용하여 공식 데이터 소스로 복원하세요composer config -g --unset repos.packagist
기능 및 변경 사항
어플리케이션 플러그인
1.4 버전에서는 앱 플러그인이 지원되며 자세한 내용은 앱 플러그인을 참조하십시오.
자동 라우팅
1.4 버전에서는 다양한 복잡한 컨트롤러 디렉터리 규칙을 지원합니다. 예를 들어
app
├── admin
│ └── v1
│ └── v2
│ └── v3
│ └── controller
│ └── Index.php
└── controller
├── v1
│ └── Index.php
└── v2
└── v3
└── Index.php
즉, webman/auto-route
플러그인은 더 이상 필요하지 않습니다.
컨트롤러 재사용 스위치
1.4 버전에서는 컨트롤러 재사용을 비활성화할 수 있으며, config/app.php
에서 'controller_reuse' => false,
로 설정할 수 있습니다. 이렇게 하면 각 요청마다 새로운 컨트롤러를 초기화하며, 즉 매 요청마다 해당 컨트롤러의__construct()
생성자를 트리거할 수 있습니다. 개발자는 생성자에서 각 요청을 위한 초기화 작업을 수행할 수 있습니다.
컨트롤러 재사용을 비활성화할 수 있기 때문에 webman/action-hook
플러그인은 더 이상 필요하지 않습니다.
HTTP 서비스 시작
1.4 버전에서는 여러 포트를 열어 HTTP 서비스를 제공할 수 있습니다. 자세한 내용은 비즈니스 처리를 위해를 참조하십시오.
뷰 파일 구성
접미사는 이제 view.php의 options 옵션에서만 구성할 수 있습니다.
지원되지 않는 사용법
use support\view\Raw;
return [
'handler' => Raw::class,
'view_suffix' => '.php'
];
올바른 사용법
use support\view\Raw;
return [
'handler' => Raw::class,
'options' => [
'view_suffix' => '.php'
]
];
세션 드라이버 네임스페이스 변경
webman은 1.4.0부터 SessionHandler
클래스의 네임스페이스를 변경했습니다.
use Webman\FileSessionHandler;
use Webman\RedisSessionHandler;
use Webman\RedisClusterSessionHandler;
를
use Webman\Session\FileSessionHandler;
use Webman\Session\RedisSessionHandler;
use Webman\Session\RedisClusterSessionHandler;
로 변경했습니다.
업그레이드 후 프로그램이 직접 오류를 발생시키지 않도록하기 위해 Webman\FileSessionHandler
클래스는 잠시 유지됩니다. 향후 버전에서 완전히 제거될 예정입니다.
이 변경은 config/session.php
의 'handler'
구성에 영향을 미칩니다.