_path = $path; } final public function getUploadPath(): string { return $this->_uploadPath; } final public function getPath(): string { return $this->_path; } final public function getMimeType(): string { return $this->_mimeType; } final public function getFileSize(): int { return $this->_fileSize; } final public function getFileSequence(): int { return $this->_fileSequence; } public function save(): static { $fullPath = WRITEPATH . $this->getUploadPath() . DIRECTORY_SEPARATOR . $this->getPath(); $this->makeDirectory($fullPath); $saveFilePath = $fullPath . DIRECTORY_SEPARATOR . $this->getOriginName(); if (file_exists($saveFilePath)) { $fileInfos = pathinfo($saveFilePath, PATHINFO_ALL); $saveFile = base64_encode($fileInfos['filename']) . "." . $fileInfos['extension']; $saveFilePath = $fullPath . DIRECTORY_SEPARATOR . $this->getOriginName(); log_message("notice", __FUNCTION__ . "파일명 변경 : 원본파일 {$this->getOriginName()}->저장파일 {$saveFile}"); $this->setOriginName($saveFile); } //원본이미지 저장 if (!file_put_contents($saveFilePath, $this->getOriginContent())) { throw new \Exception(__FUNCTION__ . " 파일저장 실패:{$saveFilePath}"); } $this->_mimeType = mime_content_type($saveFilePath); $this->_fileSize = filesize($saveFilePath); log_message("notice", __FUNCTION__ . " 원본파일 {$this->getOriginName()} 작업 완료"); return $this; } }