當前位置: 首頁>>代碼示例>>PHP>>正文


PHP FileUtils::copy方法代碼示例

本文整理匯總了PHP中FileUtils::copy方法的典型用法代碼示例。如果您正苦於以下問題:PHP FileUtils::copy方法的具體用法?PHP FileUtils::copy怎麽用?PHP FileUtils::copy使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在FileUtils的用法示例。


在下文中一共展示了FileUtils::copy方法的2個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: copyContent

		public static function copyContent($source, $destination)
		{
			if (is_dir($source) && $dh = opendir($source)) {
				if (!is_dir($destination))
					mkdir($destination, 0777);
					
				while (($file = readdir($dh)) !== false) {
					if ($file == '.' || $file == '..') {
						continue;
					} elseif (is_dir($source . DIRECTORY_SEPARATOR . $file)) {
						self::copy(
							$source . DIRECTORY_SEPARATOR . $file,
							$destination . DIRECTORY_SEPARATOR . $file
						);
					} else {
						FileUtils::copy(
							$source . DIRECTORY_SEPARATOR . $file,
							$destination . DIRECTORY_SEPARATOR . $file
						);
					}
				}
			}
		}
開發者ID:pombredanne,項目名稱:ArcherSys,代碼行數:23,代碼來源:DirUtils.class.php

示例2: run

		public function run()
		{
			$pool = get_object_vars($this->getXmlElement());
			if (!is_array($pool['file'])) $pool['file'] = array($pool['file']);
			
			foreach ($pool['file'] as $fileElement) {
				$from 	= (string)$fileElement->attributes()->from;
				$to		= (string)$fileElement->attributes()->to;

				if (!$from || !$to) continue;
				
				if (strpos($to ,'language/')!==false) {
					$dirs = 
						DirUtils::getDirs(
							$this->getParentAction()->getBuild()->getPath()
							. DIRECTORY_SEPARATOR . 'language'
							,
							false
						);
					foreach ($dirs as $dir) {
						FileUtils::copy(
							$this->
							getParentAction()->
							getCurrentMod()->
							getPath() . DIRECTORY_SEPARATOR . $from
							,
							$this->
							getParentAction()->
							getBuild()->
							getPath()
							.DIRECTORY_SEPARATOR 
							. preg_replace(
						    	'!language/(\w*)/!iS', 
						    	'language/' . $dir . '/', 
						    	$to
						    )
						);
					}
				} elseif (strpos($from, "*") && strpos($to, "*")) {
					$from = dirname(
						$this->
						getParentAction()->
						getCurrentMod()->
						getPath() . DIRECTORY_SEPARATOR .$from
					);
					
					$to = dirname(
						$this->
						getParentAction()->
						getBuild()->
						getPath()
						.DIRECTORY_SEPARATOR . $to
					);
					
					if(is_dir($to)) {
						DirUtils::copyContent($from, $to);
					} else {
						DirUtils::copy($from, $to);
					}					
				} else {
					if (
						!is_dir(
							$this->
							getParentAction()->
							getCurrentMod()->
							getPath() . DIRECTORY_SEPARATOR . $from
						)
					) {
						FileUtils::copy(
							$this->
							getParentAction()->
							getCurrentMod()->
							getPath() . DIRECTORY_SEPARATOR . $from
							,
							$this->
							getParentAction()->
							getBuild()->
							getPath() . DIRECTORY_SEPARATOR . $to
						);
					} else {
						DirUtils::copy(
							$this->
							getParentAction()->
							getCurrentMod()->
							getPath() . DIRECTORY_SEPARATOR . $from
							,
							$this->
							getParentAction()->
							getBuild()->
							getPath() . DIRECTORY_SEPARATOR . $to
						);
					}
				}
			}
		}
開發者ID:pombredanne,項目名稱:ArcherSys,代碼行數:95,代碼來源:CopyAction.class.php


注:本文中的FileUtils::copy方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。