Как я могу сказать, какая версия CakePHP является проектом?

возможно ли узнать версию CakePHP, используемую для создания проекта с доступным только кодом приложения?


моя проблема:

Я загрузил проект, сделанный с помощью CakePHP, и я действительно не могу сказать, какую версию торта использовать. Файлы говорят, например @version $Revision: 8004 $, но это отличается в некоторых файлах. Должен ли я предположить, что самая высокая ревизия (8004) является правильной для использования?

Кажется, это примерно с 2008 года, поэтому я думаю, что это 1.икс версия.

PD:здесь - это код проекта.

13 ответов


Я обнаружил, что версия, начиная с CakePHP 2.3.0, хранится в статическом файле под корневым Cake lib.

bash #: cat $CAKE_ROOT/lib/Cake/VERSION.txt

////////////////////////////////////////////////////////////////////////////////////////////////////
// +--------------------------------------------------------------------------------------------+ //
// CakePHP Version
//
// Holds a static string representing the current version of CakePHP
//
// CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
// Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
//
// Licensed under The MIT License
// Redistributions of files must retain the above copyright notice.
//
// @copyright     Copyright 2005-2012, Cake Software Foundation, Inc. (http://cakefoundation.org)
// @link          http://cakephp.org
// @package       cake.libs
// @since         CakePHP(tm) v 0.2.9
// @license       MIT License (http://www.opensource.org/licenses/mit-license.php)
// +--------------------------------------------------------------------------------------------+ //
////////////////////////////////////////////////////////////////////////////////////////////////////
2.3.0

редактировать ядро.php, добавить сверху:

echo Configure::version();

для cakephp 3.х найти \\поставщика в CakePHP\в CakePHP версии\.txt

enter image description here

////////////////////////////////////////////////////////////////////////////////////////////////////
// +--------------------------------------------------------------------------------------------+ //
// CakePHP Version
//
// Holds a static string representing the current version of CakePHP
//
// CakePHP(tm) : Rapid Development Framework (http://cakephp.org)
// Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
//
// Licensed under The MIT License
// Redistributions of files must retain the above copyright notice.
//
// @copyright     Copyright (c) Cake Software Foundation, Inc. (http://cakefoundation.org)
// @link          http://cakephp.org
// @since         CakePHP(tm) v 0.2.9
// @license       http://www.opensource.org/licenses/mit-license.php MIT License
// +--------------------------------------------------------------------------------------------+ //
////////////////////////////////////////////////////////////////////////////////////////////////////
3.3.2

простой способ : просто искать версия.txt. Откройте его, чтобы проверить версию.

путь для версии.txt

на в CakePHP 1.* : торт/версия.txt

на cakephp 2.*: lib / торт / версия.txt

на в CakePHP 3.* : поставщика/в CakePHP/в CakePHP/ версия.txt


мы можем проверить через следующий путь

Path=root/lib/cake / версия.txt

открытая версия.txt

последняя строка показывает версию cakephp


Я уверен, что это для CakePHP 1.2.ветвь x, а не CakePHP 1.3.х филиал.

Вы можете скачать 1.2.х филиала отсюда.

причина, по которой я думаю, что это 1.2, заключается в том, что все заголовки комментариев Copyright 2005-2008, и только в 1.2.х филиал использует этот диапазон дат. Все в 1.3.х филиал Copyright 2005-2010 или новее.


это как невозможно (без прохождения всех изменений версии, проверки структуры файлов / папок, комментариев...п.)

и, это не зря ИМО.

когда я запускаю приложение, я создаю его в последней версии. Но даже к тому времени, когда он выходит на публику, я обычно на новом выпуске CakePHP и буду продолжать обновлять его по мере выхода. Мои файлы приложений не изменяются вообще (кроме запрошенных изменений в примечаниях к выпуску - если таковые имеются). Только cakephp / lib изменения каталога (и, к сожалению, у вас этого нет).

Если Вам повезет, и предыдущий разработчик держит свои варианты торта в отдельных папках вместо перезаписи, то вы можете найти номер версии в папке webroot/index.php на CAKE_CORE_INCLUDE_PATH line, но в вашем случае его там нет.

Если у вас есть фактические файлы торта (я знаю, что вы этого не делаете, но другие люди могут), то вы можете посмотреть в cake/VERSION.txt файл для используемой версии.


на странице wellcome написана версия, нам не нужна команда для проверки версии. Если все же это проблема, вы как-то не найдете страницу wellcome. вы можете использовать

echo Configure::version();

Это лучшие способ получить его на время выполнения

Configure::version()

3.x docs

2.x docs

другой способ-искать версию.txt

2.X lib / торт / версия.txt

3.х поставщиков/в CakePHP/в CakePHP/версия.txt


в Cake 3x, внутри каталога проекта, введите bin\cake version (windows) или bin/cake version(osx / linux).


также для консоли Linux вы можете проверить свою версию CakePHP следующим образом.
Изменить example.com с вашим доменным именем.

# grep ^[^\/] /var/www/vhosts/example.com/httpdocs/lib/Cake/VERSION.txt

в cake 3.0 из корневого каталога приложения>> > Cat vendor/cakephp/CakePHP / VERSION.txt


для Cakephp3 откройте командную строку и перейдите в каталог приложений проекта и введите bin/cake,Он покажет вам что-то вроде этого *

Добро пожаловать в CakePHP v3.3.5 консоль

какая твоя настоящее версия cakephp.