我对 ZF Tool Project 的内部结构不够熟悉,但是看看
Afaik(不多)Zend Tool 维护一个 XML 文件来跟踪您的项目。这是通过 Zend Tool 将任何后续操作正确应用到您的项目所必需的。
create
Project Provider 中的操作的 DocBlock说:
/**
* create()
*
* @param string $path
* @param string $nameOfProfile shortName=n
* @param string $fileOfProfile shortName=f
*/
当没有两个可选参数运行时,该方法最终将创建一个新的项目文件
$newProfile = new Zend_Tool_Project_Profile(array(
'projectDirectory' => $path,
'profileData' => $profileData
));
作为默认配置文件的$profileDate
内容。如果您指定$fileOfProfile
,您可以覆盖配置文件并提供您自己的文件,例如
if ($fileOfProfile != null && file_exists($fileOfProfile)) {
$profileData = file_get_contents($fileOfProfile);
}
显然,您必须提供文件的完整路径才能使其正常工作。另一种方法是提供一个文件标识符,然后 Zend Tool 将尝试在预定义的位置找到该标识符,例如
$storage = $this->_registry->getStorage();
if ($profileData == '' && $nameOfProfile != null && $storage->isEnabled()) {
$profileData = $storage->get('project/profiles/' . $nameOfProfile . '.xml');
}
我不知道存储部分是关于什么的。就像我说的,我不熟悉 Zend Tool 的内部工作原理。如果我理解正确,您可以使用额外的两个参数将现有项目加载到新位置或自定义默认位置。
您可能想浏览ChangeLog以了解更多信息。