本文整理汇总了PHP中Cookie::__set方法的典型用法代码示例。如果您正苦于以下问题:PHP Cookie::__set方法的具体用法?PHP Cookie::__set怎么用?PHP Cookie::__set使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Cookie
的用法示例。
在下文中一共展示了Cookie::__set方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: init
public function init()
{
parent::init();
if (Tools::isSubmit('storedelivery') && (int) Tools::getValue('storedelivery') != 0) {
//Save cookie only if previous id_adress wasn't a store
$cookie = new Cookie('storedelivery');
$cookie->__set('id_address_delivery', $this->context->cart->id_address_delivery);
$store = new Store(Tools::getValue('storedelivery'));
//Test if store address exist in address table
Tools::strlen($store->name) > 32 ? $storeName = Tools::substr(preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name), 0, 29) . '...' : ($storeName = preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name));
$sql = 'SELECT id_address FROM ' . _DB_PREFIX_ . 'address WHERE alias=\'' . addslashes($storeName) . '\' AND address1=\'' . addslashes($store->address1) . '\' AND address2=\'' . addslashes($store->address2) . '\' AND postcode=\'' . $store->postcode . '\' AND city=\'' . addslashes($store->city) . '\' AND id_country=\'' . addslashes($store->id_country) . '\' AND active=1 AND deleted=0';
$id_address = Db::getInstance()->getValue($sql);
//Create store adress if not exist for this user
if (empty($id_address)) {
$country = new Country($store->id_country, $this->context->language->id);
$address = new Address();
$address->id_country = $store->id_country;
$address->id_state = $store->id_state;
$address->country = $country->name;
Tools::strlen($store->name) > 32 ? $address->alias = Tools::substr(preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name), 0, 29) . '...' : ($address->alias = preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name));
Tools::strlen($store->name) > 32 ? $address->lastname = Tools::substr(preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name), 0, 29) . '...' : ($address->lastname = preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name));
$address->firstname = " ";
$address->address1 = $store->address1;
$address->address2 = $store->address2;
$address->postcode = $store->postcode;
$address->city = $store->city;
$address->phone = $store->phone;
$address->deleted = 0;
//create an address non deleted to register them in order
$address->add();
$id_address = $address->id;
}
//Update cart info
$cart = $this->context->cart;
$cart->id_address_delivery = $id_address;
$cart->update();
//Change address of all product in cart else we are redirect on step Carrier because of function autostep or OrderController
Db::getInstance()->update('cart_product', array('id_address_delivery' => (int) $id_address), $where = 'id_cart = ' . $this->context->cart->id);
//Change post carrier option else bad default carrier is saved by fonction processCarrier of ParentOrderController
$array = array_values(Tools::getValue('delivery_option'));
$_POST['delivery_option'] = array($id_address => $array[0]);
} else {
$cookie = new Cookie('storedelivery');
$id_address_delivery = $cookie->__get('id_address_delivery');
if ($id_address_delivery != false && $this->context->cart->id_address_delivery != $id_address_delivery && Tools::isSubmit('storedelivery')) {
$this->context->cart->id_address_delivery = $cookie->__get('id_address_delivery');
$this->context->cart->update();
//Change address of all product in cart else we are redirect on step Carrier because of function autostep or OrderController
Db::getInstance()->update('cart_product', array('id_address_delivery' => (int) $cookie->__get('id_address_delivery')), $where = 'id_cart = ' . $this->context->cart->id);
//Change post carrier option else bad default carrier is saved by fonction processCarrier of ParentOrderController
$array = array_values(Tools::getValue('delivery_option'));
$_POST['delivery_option'] = array($cookie->__get('id_address_delivery') => $array[0]);
$cookie->__unset('id_address_delivery');
}
}
}
示例2: hookAjaxOpc
public function hookAjaxOpc()
{
$cookie = new Cookie('storedelivery');
$cookie->__set('id_address_delivery', $this->context->cart->id_address_delivery);
$cookie->__set('opc', true);
if (Tools::isSubmit('storedelivery') && (int) Tools::getValue('storedelivery') != 0) {
$store = new Store(Tools::getValue('storedelivery'));
//Test if store address exist in address table
Tools::strlen($store->name) > 32 ? $storeName = Tools::substr(preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name), 0, 29) . '...' : ($storeName = preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name));
$sql = 'SELECT id_address FROM ' . _DB_PREFIX_ . 'address WHERE alias=\'' . addslashes($storeName) . '\' AND address1=\'' . addslashes($store->address1) . '\' AND address2=\'' . addslashes($store->address2) . '\' AND postcode=\'' . $store->postcode . '\' AND city=\'' . addslashes($store->city) . '\' AND id_country=\'' . addslashes($store->id_country) . '\' AND active=1 AND deleted=0';
$id_address = Db::getInstance()->getValue($sql);
//Create store adress if not exist for this user
if (empty($id_address)) {
$country = new Country($store->id_country, $this->context->language->id);
$address = new Address();
$address->id_country = $store->id_country;
$address->id_state = $store->id_state;
$address->country = $country->name;
Tools::strlen($store->name) > 32 ? $address->alias = Tools::substr(preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name), 0, 29) . '...' : ($address->alias = preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name));
Tools::strlen($store->name) > 32 ? $address->lastname = Tools::substr(preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name), 0, 29) . '...' : ($address->lastname = preg_replace("/[^a-zA-Zěščřžýáíéèêàô ]+/", '', $store->name));
$address->firstname = $this->l('Store of');
$address->address1 = $store->address1;
$address->address2 = $store->address2;
$address->postcode = $store->postcode;
$address->city = $store->city;
$address->phone = $store->phone;
$address->deleted = 0;
//create an address non deleted to register them in order
$address->add();
$id_address = $address->id;
}
$cookie->__set('id_address_delivery', $id_address);
}
die(Tools::jsonEncode(array('result' => "ok")));
}
示例3: parseCookie
/**
* Parses Set-Cookie value and adds it to $cookies array
* @param $value
*/
private function parseCookie($value)
{
if (preg_match_all('/(?<key>[^\\=]+)[\\=]{0,1}(?<value>[^\\;]*)[\\;]{0,1}\\s*/m', $value, $m)) {
$cookie = new Cookie($m['key'][0]);
foreach ($m['key'] as $i => $key) {
if ($key == $cookie->name) {
$cookie->value = $m['value'][$i];
continue;
}
///$cookie[$key] = $m['value'][$i];
$cookie->__set($key, $m['value'][$i]);
}
$this->cookies[] = $cookie;
}
}