Funktionen Migration REDAXO 5 → 6
REDAXO 6 entfernt die meisten globalen Funktionen und ersetzt sie durch statische Klassenmethoden.
Request-Funktionen
| REDAXO 5.x Funktion | REDAXO 6.x Methode |
|---|---|
rex_get($key, $type, $default) |
Http\Request::get($key, $type, $default) |
rex_post($key, $type, $default) |
Http\Request::post($key, $type, $default) |
rex_request($key, $type, $default) |
Http\Request::request($key, $type, $default) |
rex_cookie($key, $type, $default) |
Http\Request::cookie($key, $type, $default) |
rex_server($key, $type, $default) |
Http\Request::server($key, $type, $default) |
rex_env($key, $type, $default) |
Http\Request::env($key, $type, $default) |
rex_files($key, $type) |
Http\Request::files($key, $type) |
rex_session($key, $type, $default) |
Http\Request::session($key, $type, $default) |
rex_set_session($key, $value) |
Http\Request::setSession($key, $value) |
rex_unset_session($key) |
Http\Request::unsetSession($key) |
rex_request_method() |
Http\Request::requestMethod() |
Beispiel: Request-Daten
// REDAXO 5.x
$id = rex_get('id', 'int', 0);
$name = rex_post('name', 'string', '');
$page = rex_request('page', 'int', 1);
rex_set_session('user_id', 123);
// REDAXO 6.x
use Redaxo\Core\Http\Request;
$id = Request::get('id', 'int', 0);
$name = Request::post('name', 'string', '');
$page = Request::request('page', 'int', 1);
Request::setSession('user_id', 123);
URL-Funktionen
| REDAXO 5.x Funktion | REDAXO 6.x Methode |
|---|---|
rex_getUrl($id, $clang, $params) |
Filesystem\Url::article($id, $clang, $params) |
Beispiel: URLs generieren
// REDAXO 5.x
$url = rex_getUrl(5);
$url = rex_getUrl(5, 1, ['foo' => 'bar']);
// REDAXO 6.x
use Redaxo\Core\Filesystem\Url;
$url = Url::article(5);
$url = Url::article(5, 1, ['foo' => 'bar']);
Escape-Funktion
| REDAXO 5.x Funktion | REDAXO 6.x Funktion |
|---|---|
rex_escape($value, $strategy) |
Redaxo\Core\View\escape($value, $strategy) |
Beispiel: HTML-Escaping
// REDAXO 5.x
$safe = rex_escape($userInput);
$jsafe = rex_escape($value, 'js');
// REDAXO 6.x
use function Redaxo\Core\View\escape;
$safe = escape($userInput);
$jsafe = escape($value, 'js');
Cache-Funktion
| REDAXO 5.x Funktion | REDAXO 6.x Methode |
|---|---|
rex_delete_cache() |
Cache::delete() |
Beispiel: Cache löschen
// REDAXO 5.x
rex_delete_cache();
// REDAXO 6.x
use Redaxo\Core\Cache;
Cache::delete();
MediaPool-Funktionen
| REDAXO 5.x Funktion | REDAXO 6.x Methode |
|---|---|
rex_mediapool_filename($filename) |
MediaPool\MediaPool::filename($filename) |
rex_mediapool_mediaIsInUse($filename) |
MediaPool\MediaPool::mediaIsInUse($filename) |
rex_mediapool_isAllowedMediaType($filename, $args) |
MediaPool\MediaPool::isAllowedExtension($filename, $args) |
rex_mediapool_isAllowedMimeType($filename) |
MediaPool\MediaPool::isAllowedMimeType($filename) |
rex_mediapool_getMediaTypeWhitelist() |
MediaPool\MediaPool::getAllowedExtensions() |
rex_mediapool_getMediaTypeBlacklist() |
MediaPool\MediaPool::getBlockedExtensions() |
rex_mediapool_Mediaform(...) |
View\View::mediaPoolMediaForm(...) |
rex_mediapool_Uploadform(...) |
View\View::mediaPoolMediaForm(...) |
rex_mediapool_Syncform(...) |
View\View::mediaPoolMediaForm(...) |
rex_mediapool_saveMedia(...) |
MediaPool\MediaPool::addMedia(...) * |
rex_mediapool_updateMedia(...) |
MediaPool\MediaPool::updateMedia(...) * |
rex_mediapool_syncFile(...) |
MediaPool\MediaPool::addMedia(...) * |
rex_mediapool_deleteMedia($filename) |
MediaPool\MediaPool::deleteMedia($filename) * |
* Diese Methoden haben geänderte Parameter oder Rückgabewerte. Siehe Detaildokumentation.
Beispiel: MediaPool-Operationen
// REDAXO 5.x
$filename = rex_mediapool_filename('test.jpg');
$inUse = rex_mediapool_mediaIsInUse('test.jpg');
$allowed = rex_mediapool_isAllowedMediaType('test.pdf', []);
// REDAXO 6.x
use Redaxo\Core\MediaPool\MediaPool;
$filename = MediaPool::filename('test.jpg');
$inUse = MediaPool::mediaIsInUse('test.jpg');
$allowed = MediaPool::isAllowedExtension('test.pdf', []);
MetaInfo-Funktionen
| REDAXO 5.x Funktion | REDAXO 6.x Methode |
|---|---|
rex_metainfo_add_field(...) |
MetaInfo\MetaInfo::addField(...) |
rex_metainfo_add_field_type(...) |
MetaInfo\MetaInfo::addFieldType(...) |
rex_metainfo_cleanup() |
MetaInfo\MetaInfo::cleanup() |
rex_metainfo_delete_field($fieldId) |
MetaInfo\MetaInfo::deleteField($fieldId) |
rex_metainfo_delete_field_type($typeId) |
MetaInfo\MetaInfo::deleteFieldType($typeId) |
rex_metainfo_extensions_handler(...) |
MetaInfo\MetaInfo::extensionHandler(...) |
rex_metainfo_meta_prefix($prefix) |
MetaInfo\MetaInfo::metaPrefix($prefix) |
rex_metainfo_meta_table($table) |
MetaInfo\MetaInfo::metaTable($table) |
Beispiel: MetaInfo-Operationen
// REDAXO 5.x
rex_metainfo_add_field('art_header', 'Header', 1, '', 1, null, '', '', '');
// REDAXO 6.x
use Redaxo\Core\MetaInfo\MetaInfo;
MetaInfo::addField('art_header', 'Header', 1, '', 1, null, '', '', '');
Konstanten → Klassenkonstanten
Globale Konstanten wurden durch Klassenkonstanten ersetzt.
Formular-Konstanten
| REDAXO 5.x Konstante | REDAXO 6.x Klassenkonstante |
|---|---|
REX_FORM_ERROR_VIOLATE_UNIQUE_KEY |
Form\Form::ERROR_VIOLATE_UNIQUE_KEY |
MetaInfo Feld-Konstanten
| REDAXO 5.x Konstante | REDAXO 6.x Klassenkonstante |
|---|---|
REX_METAINFO_FIELD_TEXT |
MetaInfo\Database\Table::FIELD_TEXT |
REX_METAINFO_FIELD_TEXTAREA |
MetaInfo\Database\Table::FIELD_TEXTAREA |
REX_METAINFO_FIELD_SELECT |
MetaInfo\Database\Table::FIELD_SELECT |
REX_METAINFO_FIELD_RADIO |
MetaInfo\Database\Table::FIELD_RADIO |
REX_METAINFO_FIELD_CHECKBOX |
MetaInfo\Database\Table::FIELD_CHECKBOX |
REX_METAINFO_FIELD_REX_MEDIA_WIDGET |
MetaInfo\Database\Table::FIELD_REX_MEDIA_WIDGET |
REX_METAINFO_FIELD_REX_MEDIALIST_WIDGET |
MetaInfo\Database\Table::FIELD_REX_MEDIA_WIDGET |
REX_METAINFO_FIELD_REX_LINK_WIDGET |
MetaInfo\Database\Table::FIELD_REX_LINK_WIDGET |
REX_METAINFO_FIELD_REX_LINKLIST_WIDGET |
MetaInfo\Database\Table::FIELD_REX_LINK_WIDGET |
REX_METAINFO_FIELD_DATE |
MetaInfo\Database\Table::FIELD_DATE |
REX_METAINFO_FIELD_DATETIME |
MetaInfo\Database\Table::FIELD_DATETIME |
REX_METAINFO_FIELD_LEGEND |
MetaInfo\Database\Table::FIELD_LEGEND |
REX_METAINFO_FIELD_TIME |
MetaInfo\Database\Table::FIELD_TIME |
REX_METAINFO_FIELD_COUNT |
MetaInfo\Database\Table::FIELD_COUNT |
View-Konstanten
| REDAXO 5.x | REDAXO 6.x |
|---|---|
rex_view::JS_ASYNC |
View\Asset::JS_ASYNC |
rex_view::JS_DEFERED |
View\Asset::JS_DEFERED |
rex_view::JS_IMMUTABLE |
View\Asset::JS_IMMUTABLE |
Hinweis: Die Schreibweise
JS_DEFERED(stattJS_DEFERRED) entspricht der tatsächlichen Implementierung im REDAXO 6.x Quellcode.
MetaInfo Default Type Konstanten
| REDAXO 5.x | REDAXO 6.x |
|---|---|
rex_metainfo_default_type::REX_MEDIALIST_WIDGET |
MetaInfo\Form\DefaultType::REX_MEDIA_WIDGET |
rex_metainfo_default_type::REX_LINKLIST_WIDGET |
MetaInfo\Form\DefaultType::REX_LINK_WIDGET |
Vollständiges Migrationsbeispiel
REDAXO 5.x Code
<?php
// Request-Parameter
$articleId = rex_get('article_id', 'int', 0);
$title = rex_post('title', 'string', '');
$page = rex_request('page', 'int', 1);
// Session
rex_set_session('last_article', $articleId);
$lastArticle = rex_session('last_article', 'int', 0);
// URL generieren
$url = rex_getUrl($articleId, 1);
// Escaping
$safeTitle = rex_escape($title);
// MediaPool
$filename = rex_mediapool_filename('test.jpg');
if (!rex_mediapool_isAllowedMediaType($filename, [])) {
echo rex_view::error('Dateityp nicht erlaubt');
}
// MetaInfo
rex_metainfo_add_field('art_header', 'Header', REX_METAINFO_FIELD_TEXT);
// Cache
rex_delete_cache();
REDAXO 6.x Code
<?php
use Redaxo\Core\Http\Request;
use Redaxo\Core\Filesystem\Url;
use Redaxo\Core\MediaPool\MediaPool;
use Redaxo\Core\MetaInfo\MetaInfo;
use Redaxo\Core\MetaInfo\Database\Table;
use Redaxo\Core\View\Message;
use Redaxo\Core\Cache;
use function Redaxo\Core\View\escape;
// Request-Parameter
$articleId = Request::get('article_id', 'int', 0);
$title = Request::post('title', 'string', '');
$page = Request::request('page', 'int', 1);
// Session
Request::setSession('last_article', $articleId);
$lastArticle = Request::session('last_article', 'int', 0);
// URL generieren
$url = Url::article($articleId, 1);
// Escaping
$safeTitle = escape($title);
// MediaPool
$filename = MediaPool::filename('test.jpg');
if (!MediaPool::isAllowedExtension($filename, [])) {
echo Message::error('Dateityp nicht erlaubt');
}
// MetaInfo
MetaInfo::addField('art_header', 'Header', Table::FIELD_TEXT);
// Cache
Cache::delete();