/** * {@inheritdoc} */ public function addFile($real_path, $new_path = '') { $this->archive->openForWrite(true); $new_path = $new_path ? $new_path : $real_path; $this->writeHeader($real_path, $new_path); $fp = @fopen($real_path, "rb"); while (($v_buffer = fread($fp, 512)) != '') { $v_binary_data = pack("a512", "{$v_buffer}"); $this->archive->write($v_binary_data); } fclose($fp); }