當我更新圖像時,我創建了這個方法來取消鏈接,但如果我說空它會刪除,它就不能與 if not empty 一起使用。太奇怪了,我試過了,但沒有用。我在沒有 oop 的情況下嘗試了它,它可以在另一個應用程序中工作。我為此進行了更改,并檢查了谷歌,但直到現在都沒有解決方案。有人在這里使用 is_uploaded_file 作為解決方案,但它也不起作用。 public $tmp_path; public $upload_directory = "images"; public function picture_path(){ return $this->upload_directory.DS.$this->filename; } public function set_file($file) { if(empty($file) || !$file || !is_array($file)) { $this->errors[] = "There was no file uploaded here"; return false; }elseif($file['error'] !=0) { $this->errors[] = $this->upload_errors_array[$file['error']]; return false; } else { $this->filename = basename($file['name']); $this->filename = preg_replace('#[^a-z.0-9]#i', '', $this->filename); $kaboom = explode(".", $this->filename); // Split file name into an array using the dot $fileExt = end($kaboom); // Now target the last array element to get the file extension $this->filename = time().rand().".".$fileExt; $this->tmp_path = $file['tmp_name']; $this->type = $file['type']; $this->size = $file['size']; } } public function getordelimage(){ static::find_by_id($this->id); $target_path = SITE_ROOT.DS. 'admin' . DS . $this->picture_path(); if(empty($this->tmp_path)) { $this->filename; $this->type; $this->size; } elseif (!empty($this->tmp_path)) { return unlink($target_path) ? true : false; } else { return false; } }
添加回答
舉報
0/150
提交
取消