setName( $name ); } } } /** * @internal */ public function __toString(){ $data = $this->getArrayCopy(); return http_build_query( $data, null, '&' ); } /** * @return Loco_data_Cookie */ public function setName( $name ){ $this->name = $name; return $this; } /** * @return string */ public function getName(){ return $this->name; } /** * Send cookie to the browser, unless filtered out. * @return bool|null */ public function send(){ if( false !== apply_filters( 'loco_setcookie', $this ) ){ $value = (string) $this; // @codeCoverageIgnoreStart return setcookie( $this->name, $value, $this->expires, COOKIEPATH, COOKIE_DOMAIN, is_ssl(), true ); } } /** * Empty values such that sending cookie would remove it from browser * @return Loco_data_Cookie */ public function kill(){ $this->exchangeArray( array() ); $this->expires = time() - 86400; return $this; } }