Mage::getVersion()
Metoda zdefiniowana jest tutaj
#File: app/Mage.php
public static function getVersion()
{
$i = self::getVersionInfo();
return trim("{$i['major']}.{$i['minor']}.{$i['revision']}" . ($i['patch'] != '' ? ".{$i['patch']}" : "")
. "-{$i['stability']}{$i['number']}", '.-');
}
Przechodząc do getVersionInfo
wspomnianego powyżej, znajdujemy następujące
#File: app/Mage.php
public static function getVersionInfo()
{
return array(
'major' => '1',
'minor' => '7',
'revision' => '0',
'patch' => '2',
'stability' => '',
'number' => '',
);
}
Tak więc Magento używa tablicy zwróconej przez getVersionInfo
metodę, aby wymyślić numer wersji. Możemy to zrobić ręcznie (naszym zdaniem) i zaproponować wersję 1.7.0.2 dla metody wymienionej powyżej. Gdybyśmy znaleźli
public static function getVersionInfo()
{
return array(
'major' => '1',
'minor' => '5',
'revision' => '0',
'patch' => '0',
'stability' => 'beta',
'number' => '1',
);
}
Wiedzieliśmy, że wersja była pierwszą wersją beta 1.5.0.0.
To powiedziawszy, jeśli strona została zhakowana, wszystkie zakłady są wyłączone - hakerzy prawdopodobnie zmodyfikowali wiele plików klas i stworzyli wersję Magento, która nie istnieje.