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

📄 general.php

📁 asterisk 計費模塊
💻 PHP
📖 第 1 页 / 共 3 页
字号:
      if (isset($address['zone_id']) && tep_not_null($address['zone_id'])) {        $state = tep_get_zone_code($address['country_id'], $address['zone_id'], $state);      }    } elseif (isset($address['country']) && tep_not_null($address['country'])) {      $country = tep_output_string_protected($address['country']);    } else {      $country = '';    }    $postcode = tep_output_string_protected($address['postcode']);    $zip = $postcode;    if ($html) {// HTML Mode      $HR = '<hr>';      $hr = '<hr>';      if ( ($boln == '') && ($eoln == "\n") ) { // Values not specified, use rational defaults        $CR = '<br>';        $cr = '<br>';        $eoln = $cr;      } else { // Use values supplied        $CR = $eoln . $boln;        $cr = $CR;      }    } else {// Text Mode      $CR = $eoln;      $cr = $CR;      $HR = '----------------------------------------';      $hr = '----------------------------------------';    }    $statecomma = '';    $streets = $street;    if ($suburb != '') $streets = $street . $cr . $suburb;    if ($country == '') $country = tep_output_string_protected($address['country']);    if ($state != '') $statecomma = $state . ', ';    $fmt = $address_format['format'];    eval("\$address = \"$fmt\";");    if ( (ACCOUNT_COMPANY == 'true') && (tep_not_null($company)) ) {      $address = $company . $cr . $address;    }    return $address;  }////// Return a formatted address// TABLES: customers, address_book  function tep_address_label($customers_id, $address_id = 1, $html = false, $boln = '', $eoln = "\n") {    $address_query = tep_db_query("select entry_firstname as firstname, entry_lastname as lastname, entry_company as company, entry_street_address as street_address, entry_suburb as suburb, entry_city as city, entry_postcode as postcode, entry_state as state, entry_zone_id as zone_id, entry_country_id as country_id from " . TABLE_ADDRESS_BOOK . " where customers_id = '" . (int)$customers_id . "' and address_book_id = '" . (int)$address_id . "'");    $address = tep_db_fetch_array($address_query);    $format_id = tep_get_address_format_id($address['country_id']);    return tep_address_format($format_id, $address, $html, $boln, $eoln);  }  function tep_row_number_format($number) {    if ( ($number < 10) && (substr($number, 0, 1) != '0') ) $number = '0' . $number;    return $number;  }  function tep_get_categories($categories_array = '', $parent_id = '0', $indent = '') {    global $languages_id;    if (!is_array($categories_array)) $categories_array = array();    $categories_query = tep_db_query("select c.categories_id, cd.categories_name from " . TABLE_CATEGORIES . " c, " . TABLE_CATEGORIES_DESCRIPTION . " cd where parent_id = '" . (int)$parent_id . "' and c.categories_id = cd.categories_id and cd.language_id = '" . (int)$languages_id . "' order by sort_order, cd.categories_name");    while ($categories = tep_db_fetch_array($categories_query)) {      $categories_array[] = array('id' => $categories['categories_id'],                                  'text' => $indent . $categories['categories_name']);      if ($categories['categories_id'] != $parent_id) {        $categories_array = tep_get_categories($categories_array, $categories['categories_id'], $indent . '&nbsp;&nbsp;');      }    }    return $categories_array;  }  function tep_get_manufacturers($manufacturers_array = '') {    if (!is_array($manufacturers_array)) $manufacturers_array = array();    $manufacturers_query = tep_db_query("select manufacturers_id, manufacturers_name from " . TABLE_MANUFACTURERS . " order by manufacturers_name");    while ($manufacturers = tep_db_fetch_array($manufacturers_query)) {      $manufacturers_array[] = array('id' => $manufacturers['manufacturers_id'], 'text' => $manufacturers['manufacturers_name']);    }    return $manufacturers_array;  }////// Return all subcategory IDs// TABLES: categories  function tep_get_subcategories(&$subcategories_array, $parent_id = 0) {    $subcategories_query = tep_db_query("select categories_id from " . TABLE_CATEGORIES . " where parent_id = '" . (int)$parent_id . "'");    while ($subcategories = tep_db_fetch_array($subcategories_query)) {      $subcategories_array[sizeof($subcategories_array)] = $subcategories['categories_id'];      if ($subcategories['categories_id'] != $parent_id) {        tep_get_subcategories($subcategories_array, $subcategories['categories_id']);      }    }  }// Output a raw date string in the selected locale date format// $raw_date needs to be in this format: YYYY-MM-DD HH:MM:SS  function tep_date_long($raw_date) {    if ( ($raw_date == '0000-00-00 00:00:00') || ($raw_date == '') ) return false;    $year = (int)substr($raw_date, 0, 4);    $month = (int)substr($raw_date, 5, 2);    $day = (int)substr($raw_date, 8, 2);    $hour = (int)substr($raw_date, 11, 2);    $minute = (int)substr($raw_date, 14, 2);    $second = (int)substr($raw_date, 17, 2);    return strftime(DATE_FORMAT_LONG, mktime($hour,$minute,$second,$month,$day,$year));  }////// Output a raw date string in the selected locale date format// $raw_date needs to be in this format: YYYY-MM-DD HH:MM:SS// NOTE: Includes a workaround for dates before 01/01/1970 that fail on windows servers  function tep_date_short($raw_date) {    if ( ($raw_date == '0000-00-00 00:00:00') || empty($raw_date) ) return false;    $year = substr($raw_date, 0, 4);    $month = (int)substr($raw_date, 5, 2);    $day = (int)substr($raw_date, 8, 2);    $hour = (int)substr($raw_date, 11, 2);    $minute = (int)substr($raw_date, 14, 2);    $second = (int)substr($raw_date, 17, 2);    if (@date('Y', mktime($hour, $minute, $second, $month, $day, $year)) == $year) {      return date(DATE_FORMAT, mktime($hour, $minute, $second, $month, $day, $year));    } else {      return ereg_replace('2037' . '$', $year, date(DATE_FORMAT, mktime($hour, $minute, $second, $month, $day, 2037)));    }  }////// Parse search string into indivual objects  function tep_parse_search_string($search_str = '', &$objects) {    $search_str = trim(strtolower($search_str));// Break up $search_str on whitespace; quoted string will be reconstructed later    $pieces = split('[[:space:]]+', $search_str);    $objects = array();    $tmpstring = '';    $flag = '';    for ($k=0; $k<count($pieces); $k++) {      while (substr($pieces[$k], 0, 1) == '(') {        $objects[] = '(';        if (strlen($pieces[$k]) > 1) {          $pieces[$k] = substr($pieces[$k], 1);        } else {          $pieces[$k] = '';        }      }      $post_objects = array();      while (substr($pieces[$k], -1) == ')')  {        $post_objects[] = ')';        if (strlen($pieces[$k]) > 1) {          $pieces[$k] = substr($pieces[$k], 0, -1);        } else {          $pieces[$k] = '';        }      }// Check individual words      if ( (substr($pieces[$k], -1) != '"') && (substr($pieces[$k], 0, 1) != '"') ) {        $objects[] = trim($pieces[$k]);        for ($j=0; $j<count($post_objects); $j++) {          $objects[] = $post_objects[$j];        }      } else {/* This means that the $piece is either the beginning or the end of a string.   So, we'll slurp up the $pieces and stick them together until we get to the   end of the string or run out of pieces.*/// Add this word to the $tmpstring, starting the $tmpstring        $tmpstring = trim(ereg_replace('"', ' ', $pieces[$k]));// Check for one possible exception to the rule. That there is a single quoted word.        if (substr($pieces[$k], -1 ) == '"') {// Turn the flag off for future iterations          $flag = 'off';          $objects[] = trim($pieces[$k]);          for ($j=0; $j<count($post_objects); $j++) {            $objects[] = $post_objects[$j];          }          unset($tmpstring);// Stop looking for the end of the string and move onto the next word.          continue;        }// Otherwise, turn on the flag to indicate no quotes have been found attached to this word in the string.        $flag = 'on';// Move on to the next word        $k++;// Keep reading until the end of the string as long as the $flag is on        while ( ($flag == 'on') && ($k < count($pieces)) ) {          while (substr($pieces[$k], -1) == ')') {            $post_objects[] = ')';            if (strlen($pieces[$k]) > 1) {              $pieces[$k] = substr($pieces[$k], 0, -1);            } else {              $pieces[$k] = '';            }          }// If the word doesn't end in double quotes, append it to the $tmpstring.          if (substr($pieces[$k], -1) != '"') {// Tack this word onto the current string entity            $tmpstring .= ' ' . $pieces[$k];// Move on to the next word            $k++;            continue;          } else {/* If the $piece ends in double quotes, strip the double quotes, tack the   $piece onto the tail of the string, push the $tmpstring onto the $haves,   kill the $tmpstring, turn the $flag "off", and return.*/            $tmpstring .= ' ' . trim(ereg_replace('"', ' ', $pieces[$k]));// Push the $tmpstring onto the array of stuff to search for            $objects[] = trim($tmpstring);            for ($j=0; $j<count($post_objects); $j++) {              $objects[] = $post_objects[$j];            }            unset($tmpstring);// Turn off the flag to exit the loop            $flag = 'off';          }        }      }    }// add default logical operators if needed    $temp = array();    for($i=0; $i<(count($objects)-1); $i++) {      $temp[] = $objects[$i];      if ( ($objects[$i] != 'and') &&           ($objects[$i] != 'or') &&           ($objects[$i] != '(') &&           ($objects[$i+1] != 'and') &&           ($objects[$i+1] != 'or') &&           ($objects[$i+1] != ')') ) {        $temp[] = ADVANCED_SEARCH_DEFAULT_OPERATOR;      }    }    $temp[] = $objects[$i];    $objects = $temp;    $keyword_count = 0;    $operator_count = 0;    $balance = 0;    for($i=0; $i<count($objects); $i++) {      if ($objects[$i] == '(') $balance --;      if ($objects[$i] == ')') $balance ++;      if ( ($objects[$i] == 'and') || ($objects[$i] == 'or') ) {        $operator_count ++;      } elseif ( ($objects[$i]) && ($objects[$i] != '(') && ($objects[$i] != ')') ) {        $keyword_count ++;      }    }    if ( ($operator_count < $keyword_count) && ($balance == 0) ) {      return true;    } else {      return false;    }  }////// Check date  function tep_checkdate($date_to_check, $format_string, &$date_array) {    $separator_idx = -1;    $separators = array('-', ' ', '/', '.');    $month_abbr = array('jan','feb','mar','apr','may','jun','jul','aug','sep','oct','nov','dec');    $no_of_days = array(31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);    $format_string = strtolower($format_string);    if (strlen($date_to_check) != strlen($format_string)) {      return false;    }    $size = sizeof($separators);    for ($i=0; $i<$size; $i++) {      $pos_separator = strpos($date_to_check, $separators[$i]);      if ($pos_separator != false) {        $date_separator_idx = $i;        break;      }    }    for ($i=0; $i<$size; $i++) {      $pos_separator = strpos($format_string, $separators[$i]);      if ($pos_separator != false) {        $format_separator_idx = $i;        break;      }    }    if ($date_separator_idx != $format_separator_idx) {      return false;    }    if ($date_separator_idx != -1) {      $format_string_array = explode( $separators[$date_separator_idx], $format_string );      if (sizeof($format_string_array) != 3) {        return false;      }      $date_to_check_array = explode( $separators[$date_separator_idx], $date_to_check );      if (sizeof($date_to_check_array) != 3) {        return false;      }      $size = sizeof($format_string_array);      for ($i=0; $i<$size; $i++) {        if ($format_string_array[$i] == 'mm' || $format_string_array[$i] == 'mmm') $month = $date_to_check_array[$i];        if ($format_string_array[$i] == 'dd') $day = $date_to_check_array[$i];        if ( ($format_string_array[$i] == 'yyyy') || ($format_string_array[$i] == 'aaaa') ) $year = $date_to_check_array[$i];      }    } else {      if (strlen($format_string) == 8 || strlen($format_string) == 9) {        $pos_month = strpos($format_string, 'mmm');        if ($pos_month != false) {          $month = substr( $date_to_check, $pos_month, 3 );          $size = sizeof($month_abbr);          for ($i=0; $i<$size; $i++) {            if ($month == $month_abbr[$i]) {              $month = $i;              break;            }          }        } else {          $month = substr($date_to_check, strpos($format_string, 'mm'), 2);        }      } else {        return false;      }      $day = substr($date_to_check, strpos($format_string, 'dd'), 2);      $year = substr($date_to_check, strpos($format_string, 'yyyy'), 4);    }    if (strlen($year) != 4) {      return false;    }    if (!settype($year, 'integer') || !settype($month, 'integer') || !settype($day, 'integer')) {      return false;    }    if ($month > 12 || $month < 1) {      return false;    }    if ($day < 1) {      return false;    }    if (tep_is_leap_year($year)) {      $no_of_days[1] = 29;    }    if ($day > $no_of_days[$month - 1]) {      return false;    }    $date_array = array($year, $month, $day);    return true;  }////// Check if year is a leap year  function tep_is_leap_year($year) {    if ($year % 100 == 0) {      if ($year % 400 == 0) return true;    } else {      if (($year % 4) == 0) return true;    }    return false;  }////// Return table heading with sorting capabilities  function tep_create_sort_heading($sortby, $colnum, $heading) {    global $PHP_SELF;    $sort_prefix = '';    $sort_suffix = '';    if ($sortby) {      $sort_prefix = '<a href="' . tep_href_link(basename($PHP_SELF), tep_get_all_get_params(array('page', 'info', 'sort')) . 'page=1&sort=' . $colnum . ($sortby == $colnum . 'a' ? 'd' : 'a')) . '" title="' . tep_output_string(TEXT_SORT_PRODUCTS . ($sortby == $colnum . 'd' || substr($sortby, 0, 1) != $colnum ? TEXT_ASCENDINGLY : TEXT_DESCENDINGLY) . TEXT_BY . $heading) . '" class="productListing-heading">' ;      $sort_suffix = (substr($sortby, 0, 1) == $colnum ? (substr($sortby, 1, 1) == 'a' ? '+' : '-') : '') . '</a>';    }    return $sort_prefix . $heading . $sort_suffix;  }////// Recursively go through the categories and retreive all parent categories IDs// TABLES: categories  function tep_get_parent_categories(&$categories, $categories_id) {    $parent_categories_query = tep_db_query("select parent_id from " . TABLE_CATEGORIES . " where categories_id = '" . (int)$categories_id . "'");    while ($parent_categories = tep_db_fetch_array($parent_categories_query)) {      if ($parent_categories['parent_id'] == 0) return true;      $categories[sizeof($categories)] = $parent_categories['parent_id'];      if ($parent_categories['parent_id'] != $categories_id) {        tep_get_parent_categories($categories, $parent_categories['parent_id']);      }    }  }////// Construct a category path to the product// TABLES: products_to_categories  function tep_get_product_path($products_id) {    $cPath = '';

⌨️ 快捷键说明

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