⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shipping.php

📁 每个RFC 3261信息头有一个相应的存取标识. 但是,许多信息头拥有同样的形式。 例如。To和From的信息头都是由显示名和一个URI组成。 To和From信息头用来管理与处理NameAddr实例的
💻 PHP
字号:
<?php/*  $Id: shipping.php,v 1.23 2003/06/29 11:22:05 hpdl Exp $  osCommerce, Open Source E-Commerce Solutions  http://www.oscommerce.com  Copyright (c) 2003 osCommerce  Released under the GNU General Public License*/  class shipping {    var $modules;// class constructor    function shipping($module = '') {      global $language, $PHP_SELF;      if (defined('MODULE_SHIPPING_INSTALLED') && tep_not_null(MODULE_SHIPPING_INSTALLED)) {        $this->modules = explode(';', MODULE_SHIPPING_INSTALLED);        $include_modules = array();        if ( (tep_not_null($module)) && (in_array(substr($module['id'], 0, strpos($module['id'], '_')) . '.' . substr($PHP_SELF, (strrpos($PHP_SELF, '.')+1)), $this->modules)) ) {          $include_modules[] = array('class' => substr($module['id'], 0, strpos($module['id'], '_')), 'file' => substr($module['id'], 0, strpos($module['id'], '_')) . '.' . substr($PHP_SELF, (strrpos($PHP_SELF, '.')+1)));        } else {          reset($this->modules);          while (list(, $value) = each($this->modules)) {            $class = substr($value, 0, strrpos($value, '.'));            $include_modules[] = array('class' => $class, 'file' => $value);          }        }        for ($i=0, $n=sizeof($include_modules); $i<$n; $i++) {          include(DIR_WS_LANGUAGES . $language . '/modules/shipping/' . $include_modules[$i]['file']);          include(DIR_WS_MODULES . 'shipping/' . $include_modules[$i]['file']);          $GLOBALS[$include_modules[$i]['class']] = new $include_modules[$i]['class'];        }      }    }    function quote($method = '', $module = '') {      global $total_weight, $shipping_weight, $shipping_quoted, $shipping_num_boxes;      $quotes_array = array();      if (is_array($this->modules)) {        $shipping_quoted = '';        $shipping_num_boxes = 1;        $shipping_weight = $total_weight;        if (SHIPPING_BOX_WEIGHT >= $shipping_weight*SHIPPING_BOX_PADDING/100) {          $shipping_weight = $shipping_weight+SHIPPING_BOX_WEIGHT;        } else {          $shipping_weight = $shipping_weight + ($shipping_weight*SHIPPING_BOX_PADDING/100);        }        if ($shipping_weight > SHIPPING_MAX_WEIGHT) { // Split into many boxes          $shipping_num_boxes = ceil($shipping_weight/SHIPPING_MAX_WEIGHT);          $shipping_weight = $shipping_weight/$shipping_num_boxes;        }        $include_quotes = array();        reset($this->modules);        while (list(, $value) = each($this->modules)) {          $class = substr($value, 0, strrpos($value, '.'));          if (tep_not_null($module)) {            if ( ($module == $class) && ($GLOBALS[$class]->enabled) ) {              $include_quotes[] = $class;            }          } elseif ($GLOBALS[$class]->enabled) {            $include_quotes[] = $class;          }        }        $size = sizeof($include_quotes);        for ($i=0; $i<$size; $i++) {          $quotes = $GLOBALS[$include_quotes[$i]]->quote($method);          if (is_array($quotes)) $quotes_array[] = $quotes;        }      }      return $quotes_array;    }    function cheapest() {      if (is_array($this->modules)) {        $rates = array();        reset($this->modules);        while (list(, $value) = each($this->modules)) {          $class = substr($value, 0, strrpos($value, '.'));          if ($GLOBALS[$class]->enabled) {            $quotes = $GLOBALS[$class]->quotes;            for ($i=0, $n=sizeof($quotes['methods']); $i<$n; $i++) {              if (isset($quotes['methods'][$i]['cost']) && tep_not_null($quotes['methods'][$i]['cost'])) {                $rates[] = array('id' => $quotes['id'] . '_' . $quotes['methods'][$i]['id'],                                 'title' => $quotes['module'] . ' (' . $quotes['methods'][$i]['title'] . ')',                                 'cost' => $quotes['methods'][$i]['cost']);              }            }          }        }        $cheapest = false;        for ($i=0, $n=sizeof($rates); $i<$n; $i++) {          if (is_array($cheapest)) {            if ($rates[$i]['cost'] < $cheapest['cost']) {              $cheapest = $rates[$i];            }          } else {            $cheapest = $rates[$i];          }        }        return $cheapest;      }    }  }?>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -