48

是否有可能知道用于生成项目的 CakePHP 版本,只有应用程序代码可用?


我的问题:

我下载了一个用CakePHP 制作的项目,我真的不知道该使用哪个Cake 版本。文件说,例如@version $Revision: 8004 $,但在某些文件中是不同的。我应该假设最高版本(8004)是正确的吗?

它似乎是从 2008 年左右开始的,所以我猜它是 1.x 版本。

PD:是项目的代码。

4

14 回答 14

87

我发现从 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
于 2013-09-05T14:46:11.303 回答
26

编辑 core.php,添加到顶部:

echo Configure::version();
于 2013-06-02T00:09:00.507 回答
19

对于 cakephp 3.x 找到 \vendor\cakephp\cakephp\VERSION.txt

在此处输入图像描述

////////////////////////////////////////////////////////////////////////////////////////////////////
// +--------------------------------------------------------------------------------------------+ //
// 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
于 2016-08-22T09:48:08.930 回答
17

简单的方法:只需搜索VERSION.txt文件。打开它以检查版本。

version.txt 的路径

对于cakephp 1.*:cake/VERSION.txt

对于cakephp 2.*:lib/Cake/VERSION.txt

对于cakephp 3. & 4.* :vendor/cakephp/cakephp/VERSION.txt

于 2014-07-28T06:32:08.420 回答
4

我确定这是针对 CakePHP 1.2.x 分支,而不是 CakePHP 1.3.x 分支。

您可以从这里下载 1.2.x 分支

我认为它是 1.2 的原因是所有注释标题都是Copyright 2005-2008,并且只有 1.2.x 分支使用该日期范围。1.3.x 分支中的所有内容都是Copyright 2005-2010或更新的。

于 2013-06-02T03:26:42.433 回答
4

我们可以通过以下路径检查

路径=root/lib/cake/VERSION.txt

打开版本.txt

最后一行显示 cakephp 的版本

于 2015-05-05T07:09:44.703 回答
3

这是在运行时获得它的最佳方法

Configure::version()

3.x 文档

2.x 文档

另一种方法是查找 VERSION.txt

2.x lib/Cake/VERSION.txt

3.x 供应商/cakephp/cakephp/VERSION.txt

于 2017-06-29T15:29:31.810 回答
2

在 Cake 3x 中,在您的项目目录中,键入bin\cake version(windows) 或bin/cake version(osx/linux)。

于 2018-02-09T10:54:40.370 回答
2

Wellcome页面上写了版本,我们不需要任何命令来检查版本。如果仍然是问题,您不知何故找不到惠康页面。您可以使用

echo Configure::version();
于 2015-08-18T08:49:04.947 回答
1

这似乎是不可能的(无需经历所有版本更改、检查文件/文件夹结构、注释等)。

而且,这是有充分理由的 IMO。

当我启动一个应用程序时,我会在最新版本中构建它。但是,即使在它公开的时候,我通常都在使用 CakePHP 的新版本,并且会在它们发布时继续更新它。我的 APP 文件根本没有改变(除了每个发行说明要求的更改 - 如果有的话)。只有 cakephp/lib 目录改变(不幸的是,你没有那个)。

如果您很幸运,并且之前的开发人员将他们的 Cake 版本保存在单独的文件夹中而不是覆盖,那么您可能会在您webroot/index.phpCAKE_CORE_INCLUDE_PATH行中找到版本号,但在您的情况下,它不存在。

如果您确实有实际的 Cake 文件(我知道您没有,但其他人可能有),那么您可以在cake/VERSION.txt文件中查找您正在使用的版本。

于 2013-06-02T07:30:19.703 回答
0

同样对于 Linux 控制台,您可以像这样检查您的 CakePHP 版本。
将 example.com 更改为您的域名。

# grep ^[^\/] /var/www/vhosts/example.com/httpdocs/lib/Cake/VERSION.txt
于 2014-11-01T11:06:21.583 回答
0

在应用根目录的 cake 3.0 中>>> cat vendor/cakephp/cakephp/VERSION.txt

于 2016-03-29T20:53:40.807 回答
0

composer任何使用在composer.json文件中包含版本详细信息的PHP 框架

在此处输入图像描述

例子

{
    "name": "cakephp/app",
    "description": "CakePHP skeleton app",
    "homepage": "http://cakephp.org",
    "type": "project",
    "license": "MIT",
    "require": {
        "php": ">=5.4.16",
        "cakephp/cakephp": "3.6.11",//<<< Cakephp Version
        "mobiledetect/mobiledetectlib": "2.8.33",
        "cakephp/migrations": "1.8.1",
        "cakephp/plugin-installer": "*",
        "donatj/simplecalendar": "^0.6.1",
        "davidyell/proffer": "0.6.3"
    },
于 2020-06-17T08:11:24.550 回答
0

对于 Cakephp3,打开命令行并转到您的 Project App 目录并输入bin/cake,它会显示如下内容 *

欢迎使用 CakePHP v3.3.5 控制台

这是您当前的cakephp 版本。

于 2017-01-06T20:42:53.850 回答