示例#1
0
 /**
  * @param	Observer $observer
  * @see		Subject::detach()
  */
 public function detach(Observer $observer)
 {
     $hash = $observer->hashCode();
     if (isset($this->observers[$hash])) {
         unset($this->observers[$hash]);
     }
 }
示例#2
0
	/**
	 * Remove um observador do objeto
	 * @param	Observer $observer
	 * @return	boolean TRUE caso o observador tenha sido
	 * removido com sucesso
	 * @see		Subject::detach()
	 */
	public function detach( Observer $observer ) {
		if ( $observer instanceof Object ) {
			$hashCode = $observer->hashCode();
		} else {
			$hashCode = spl_object_hash( $observer );
		}

		if ( isset( $this->observers[ $hashCode ] ) ) {
			unset( $this->observers[ $hashCode ] );
			return true;
		}

		return false;
	}