本文整理汇总了PHP中Zend_Tool_Project_Profile::isLoadableFromFile方法的典型用法代码示例。如果您正苦于以下问题:PHP Zend_Tool_Project_Profile::isLoadableFromFile方法的具体用法?PHP Zend_Tool_Project_Profile::isLoadableFromFile怎么用?PHP Zend_Tool_Project_Profile::isLoadableFromFile使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Zend_Tool_Project_Profile
的用法示例。
在下文中一共展示了Zend_Tool_Project_Profile::isLoadableFromFile方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _findProfileDirectory
protected function _findProfileDirectory($projectDirectory = null, $searchParentDirectories = true)
{
// use the cwd if no directory was provided
if ($projectDirectory == null) {
$projectDirectory = getcwd();
} elseif (realpath($projectDirectory) == false) {
throw new Zend_Tool_Project_Provider_Exception('The $projectDirectory supplied does not exist.');
}
$profile = new Zend_Tool_Project_Profile();
$parentDirectoriesArray = explode(DIRECTORY_SEPARATOR, ltrim($projectDirectory, DIRECTORY_SEPARATOR));
while ($parentDirectoriesArray) {
$projectDirectoryAssembled = implode(DIRECTORY_SEPARATOR, $parentDirectoriesArray);
if (DIRECTORY_SEPARATOR !== "\\") {
$projectDirectoryAssembled = DIRECTORY_SEPARATOR . $projectDirectoryAssembled;
}
$profile->setAttribute('projectDirectory', $projectDirectoryAssembled);
if ($profile->isLoadableFromFile()) {
unset($profile);
return $projectDirectoryAssembled;
}
// break after first run if we are not to check upper directories
if ($searchParentDirectories == false) {
break;
}
array_pop($parentDirectoriesArray);
}
return false;
}
示例2: _loadProfile
/**
* _getProject is designed to find if there is project file in the context of where
* the client has been called from.. The search order is as follows..
* - traversing downwards from (PWD) - current working directory
* - if an enpoint variable has been registered in teh client registry - key=workingDirectory
* - if an ENV variable with the key ZFPROJECT_PATH is found
*
* @param $loadProfileFlag bool Whether or not to throw an exception when no profile is found
* @param $projectDirectory string The project directory to use to search
* @param $searchParentDirectories bool Whether or not to search upper level direcotries
* @return Zend_Tool_Project_Profile
*/
protected function _loadProfile($loadProfileFlag = self::NO_PROFILE_THROW_EXCEPTION, $projectDirectory = null, $searchParentDirectories = true)
{
// use the cwd if no directory was provided
if ($projectDirectory == null) {
$projectDirectory = getcwd();
} elseif (realpath($projectDirectory) == false) {
throw new Zend_Tool_Project_Provider_Exception('The $projectDirectory supplied does not exist.');
}
$profile = new Zend_Tool_Project_Profile();
$parentDirectoriesArray = explode(DIRECTORY_SEPARATOR, ltrim($projectDirectory, DIRECTORY_SEPARATOR));
while ($parentDirectoriesArray) {
$projectDirectoryAssembled = implode(DIRECTORY_SEPARATOR, $parentDirectoriesArray);
if (DIRECTORY_SEPARATOR !== "\\") {
$projectDirectoryAssembled = DIRECTORY_SEPARATOR . $projectDirectoryAssembled;
}
$profile->setAttribute('projectDirectory', $projectDirectoryAssembled);
if ($profile->isLoadableFromFile()) {
chdir($projectDirectoryAssembled);
$profile->loadFromFile();
$this->_loadedProfile = $profile;
break;
}
// break after first run if we are not to check upper directories
if ($searchParentDirectories == false) {
break;
}
array_pop($parentDirectoriesArray);
}
if ($this->_loadedProfile == null) {
if ($loadProfileFlag == self::NO_PROFILE_THROW_EXCEPTION) {
throw new Zend_Tool_Project_Provider_Exception('A project profile was not found.');
} elseif ($loadProfileFlag == self::NO_PROFILE_RETURN_FALSE) {
return false;
}
}
return $profile;
}
示例3: testProfileFromVariousSourcesIsLoadableFromFile
public function testProfileFromVariousSourcesIsLoadableFromFile()
{
$profile = new Zend_Tool_Project_Profile();
// no options, should return false
$this->assertFalse($profile->isLoadableFromFile());
// invalid file path, should be false
$profile->setAttribute('projectProfileFile', $this->_projectProfileFile . '.invalid-file');
$this->assertFalse($profile->isLoadableFromFile());
// valid file path, shoudl be true
$profile->setAttribute('projectProfileFile', $this->_projectProfileFile);
$this->assertTrue($profile->isLoadableFromFile());
// just project directory
$profile = new Zend_Tool_Project_Profile();
// shoudl be false with non existent directory
$profile->setAttribute('projectDirectory', $this->_projectDirectory . 'non-existent/dir/');
$this->assertFalse($profile->isLoadableFromFile());
// should return true for proper directory
copy($this->_projectProfileFile, $this->_projectDirectory . '/.zfproject.xml');
$profile->setAttribute('projectDirectory', $this->_projectDirectory);
$this->assertTrue($profile->isLoadableFromFile());
}
示例4: _loadProfile
/**
* _getProject is designed to find if there is project file in the context of where
* the client has been called from.. The search order is as follows..
* - traversing downwards from (PWD) - current working directory
* - if an enpoint variable has been registered in teh client registry - key=workingDirectory
* - if an ENV variable with the key ZFPROJECT_PATH is found
*
* @
* @return Zend_Tool_Project_Profile
*/
protected function _loadProfile($loadProfileFlag = self::NO_PROFILE_THROW_EXCEPTION, $projectDirectory = null)
{
if ($projectDirectory == null) {
$projectDirectory = getcwd();
}
$profile = new Zend_Tool_Project_Profile();
$profile->setAttribute('projectDirectory', $projectDirectory);
if ($profile->isLoadableFromFile()) {
$profile->loadFromFile();
$this->_loadedProfile = $profile;
}
if ($this->_loadedProfile == null) {
if ($loadProfileFlag == self::NO_PROFILE_THROW_EXCEPTION) {
throw new Zend_Tool_Project_Provider_Exception('A project profile was not found.');
} elseif ($loadProfileFlag == self::NO_PROFILE_RETURN_FALSE) {
return false;
}
}
return $profile;
}