当前位置: 首页>>代码示例>>PHP>>正文


PHP SearchHelper::limitSearchWord方法代码示例

本文整理汇总了PHP中SearchHelper::limitSearchWord方法的典型用法代码示例。如果您正苦于以下问题:PHP SearchHelper::limitSearchWord方法的具体用法?PHP SearchHelper::limitSearchWord怎么用?PHP SearchHelper::limitSearchWord使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在SearchHelper的用法示例。


在下文中一共展示了SearchHelper::limitSearchWord方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。

示例1: display

 public function display($tpl = null)
 {
     require_once JPATH_COMPONENT_ADMINISTRATOR . '/helpers/search.php';
     $app = JFactory::getApplication();
     $pathway = $app->getPathway();
     $uri = JURI::getInstance();
     $error = null;
     $rows = null;
     $results = null;
     $total = 0;
     // Get some data from the model
     $areas = $this->get('areas');
     $state = $this->get('state');
     $searchword = $state->get('keyword');
     $params = $app->getParams();
     $menus = $app->getMenu();
     $menu = $menus->getActive();
     // because the application sets a default page title, we need to get it
     // right from the menu item itself
     if (is_object($menu)) {
         $menu_params = new JRegistry();
         $menu_params->loadString($menu->params);
         if (!$menu_params->get('page_title')) {
             $params->set('page_title', JText::_('COM_SEARCH_SEARCH'));
         }
     } else {
         $params->set('page_title', JText::_('COM_SEARCH_SEARCH'));
     }
     $title = $params->get('page_title');
     if ($app->getCfg('sitename_pagetitles', 0) == 1) {
         $title = JText::sprintf('JPAGETITLE', $app->getCfg('sitename'), $title);
     } elseif ($app->getCfg('sitename_pagetitles', 0) == 2) {
         $title = JText::sprintf('JPAGETITLE', $title, $app->getCfg('sitename'));
     }
     $this->document->setTitle($title);
     if ($params->get('menu-meta_description')) {
         $this->document->setDescription($params->get('menu-meta_description'));
     }
     if ($params->get('menu-meta_keywords')) {
         $this->document->setMetadata('keywords', $params->get('menu-meta_keywords'));
     }
     if ($params->get('robots')) {
         $this->document->setMetadata('robots', $params->get('robots'));
     }
     // built select lists
     $orders = array();
     $orders[] = JHtml::_('select.option', 'newest', JText::_('COM_SEARCH_NEWEST_FIRST'));
     $orders[] = JHtml::_('select.option', 'oldest', JText::_('COM_SEARCH_OLDEST_FIRST'));
     $orders[] = JHtml::_('select.option', 'popular', JText::_('COM_SEARCH_MOST_POPULAR'));
     $orders[] = JHtml::_('select.option', 'alpha', JText::_('COM_SEARCH_ALPHABETICAL'));
     $orders[] = JHtml::_('select.option', 'category', JText::_('JCATEGORY'));
     $lists = array();
     $lists['ordering'] = JHtml::_('select.genericlist', $orders, 'ordering', 'class="inputbox"', 'value', 'text', $state->get('ordering'));
     $searchphrases = array();
     $searchphrases[] = JHtml::_('select.option', 'all', JText::_('COM_SEARCH_ALL_WORDS'));
     $searchphrases[] = JHtml::_('select.option', 'any', JText::_('COM_SEARCH_ANY_WORDS'));
     $searchphrases[] = JHtml::_('select.option', 'exact', JText::_('COM_SEARCH_EXACT_PHRASE'));
     $lists['searchphrase'] = JHtml::_('select.radiolist', $searchphrases, 'searchphrase', '', 'value', 'text', $state->get('match'));
     // log the search
     JSearchHelper::logSearch($searchword, 'com_search');
     //limit searchword
     $lang = JFactory::getLanguage();
     $upper_limit = $lang->getUpperLimitSearchWord();
     $lower_limit = $lang->getLowerLimitSearchWord();
     if (SearchHelper::limitSearchWord($searchword)) {
         $error = JText::sprintf('COM_SEARCH_ERROR_SEARCH_MESSAGE', $lower_limit, $upper_limit);
     }
     // Sanitise searchword
     if (SearchHelper::santiseSearchWord($searchword, $state->get('match'))) {
         $error = JText::_('COM_SEARCH_ERROR_IGNOREKEYWORD');
     }
     if (!$searchword && !empty($this->input) && count($this->input->post)) {
         // $error = JText::_('COM_SEARCH_ERROR_ENTERKEYWORD');
     }
     // Put the filtered results back into the model
     // for next release, the checks should be done in the model perhaps...
     $state->set('keyword', $searchword);
     if ($error == null) {
         $results = $this->get('data');
         $total = $this->get('total');
         $pagination = $this->get('pagination');
         require_once JPATH_SITE . '/components/com_content/helpers/route.php';
         for ($i = 0, $count = count($results); $i < $count; $i++) {
             $row =& $results[$i]->text;
             if ($state->get('match') == 'exact') {
                 $searchwords = array($searchword);
                 $needle = $searchword;
             } else {
                 $searchworda = preg_replace('#\\xE3\\x80\\x80#s', ' ', $searchword);
                 $searchwords = preg_split("/\\s+/u", $searchworda);
                 $needle = $searchwords[0];
             }
             $row = SearchHelper::prepareSearchContent($row, $needle);
             $searchwords = array_unique($searchwords);
             $searchRegex = '#(';
             $x = 0;
             foreach ($searchwords as $k => $hlword) {
                 $searchRegex .= $x == 0 ? '' : '|';
                 $searchRegex .= preg_quote($hlword, '#');
                 $x++;
//.........这里部分代码省略.........
开发者ID:RuDers,项目名称:JoomlaSQL,代码行数:101,代码来源:view.html.php

示例2: display

 /**
  * Execute and display a template script.
  *
  * @param   string  $tpl  The name of the template file to parse; automatically searches through the template paths.
  *
  * @return  mixed  A string if successful, otherwise an Error object.
  */
 public function display($tpl = null)
 {
     JLoader::register('SearchHelper', JPATH_COMPONENT_ADMINISTRATOR . '/helpers/search.php');
     $app = JFactory::getApplication();
     $uri = JUri::getInstance();
     $error = null;
     $rows = null;
     $results = null;
     $total = 0;
     // Get some data from the model
     $areas = $this->get('areas');
     $state = $this->get('state');
     $searchword = $state->get('keyword');
     $params = $app->getParams();
     $menus = $app->getMenu();
     $menu = $menus->getActive();
     // Because the application sets a default page title, we need to get it right from the menu item itself
     if (is_object($menu)) {
         $menu_params = new Registry($menu->params);
         if (!$menu_params->get('page_title')) {
             $params->set('page_title', JText::_('COM_SEARCH_SEARCH'));
         }
     } else {
         $params->set('page_title', JText::_('COM_SEARCH_SEARCH'));
     }
     $title = $params->get('page_title');
     if ($app->get('sitename_pagetitles', 0) == 1) {
         $title = JText::sprintf('JPAGETITLE', $app->get('sitename'), $title);
     } elseif ($app->get('sitename_pagetitles', 0) == 2) {
         $title = JText::sprintf('JPAGETITLE', $title, $app->get('sitename'));
     }
     $this->document->setTitle($title);
     if ($params->get('menu-meta_description')) {
         $this->document->setDescription($params->get('menu-meta_description'));
     }
     if ($params->get('menu-meta_keywords')) {
         $this->document->setMetadata('keywords', $params->get('menu-meta_keywords'));
     }
     if ($params->get('robots')) {
         $this->document->setMetadata('robots', $params->get('robots'));
     }
     // Built select lists
     $orders = array();
     $orders[] = JHtml::_('select.option', 'newest', JText::_('COM_SEARCH_NEWEST_FIRST'));
     $orders[] = JHtml::_('select.option', 'oldest', JText::_('COM_SEARCH_OLDEST_FIRST'));
     $orders[] = JHtml::_('select.option', 'popular', JText::_('COM_SEARCH_MOST_POPULAR'));
     $orders[] = JHtml::_('select.option', 'alpha', JText::_('COM_SEARCH_ALPHABETICAL'));
     $orders[] = JHtml::_('select.option', 'category', JText::_('JCATEGORY'));
     $lists = array();
     $lists['ordering'] = JHtml::_('select.genericlist', $orders, 'ordering', 'class="inputbox"', 'value', 'text', $state->get('ordering'));
     $searchphrases = array();
     $searchphrases[] = JHtml::_('select.option', 'all', JText::_('COM_SEARCH_ALL_WORDS'));
     $searchphrases[] = JHtml::_('select.option', 'any', JText::_('COM_SEARCH_ANY_WORDS'));
     $searchphrases[] = JHtml::_('select.option', 'exact', JText::_('COM_SEARCH_EXACT_PHRASE'));
     $lists['searchphrase'] = JHtml::_('select.radiolist', $searchphrases, 'searchphrase', '', 'value', 'text', $state->get('match'));
     // Log the search
     JSearchHelper::logSearch($searchword, 'com_search');
     // Limit searchword
     $lang = JFactory::getLanguage();
     $upper_limit = $lang->getUpperLimitSearchWord();
     $lower_limit = $lang->getLowerLimitSearchWord();
     if (SearchHelper::limitSearchWord($searchword)) {
         $error = JText::sprintf('COM_SEARCH_ERROR_SEARCH_MESSAGE', $lower_limit, $upper_limit);
     }
     // Sanitise searchword
     if (SearchHelper::santiseSearchWord($searchword, $state->get('match'))) {
         $error = JText::_('COM_SEARCH_ERROR_IGNOREKEYWORD');
     }
     if (!$searchword && !empty($this->input) && count($this->input->post)) {
         // $error = JText::_('COM_SEARCH_ERROR_ENTERKEYWORD');
     }
     // Put the filtered results back into the model
     // for next release, the checks should be done in the model perhaps...
     $state->set('keyword', $searchword);
     if ($error == null) {
         $results = $this->get('data');
         $total = $this->get('total');
         $pagination = $this->get('pagination');
         JLoader::register('ContentHelperRoute', JPATH_SITE . '/components/com_content/helpers/route.php');
         for ($i = 0, $count = count($results); $i < $count; $i++) {
             $row =& $results[$i]->text;
             if ($state->get('match') == 'exact') {
                 $searchwords = array($searchword);
                 $needle = $searchword;
             } else {
                 $searchworda = preg_replace('#\\xE3\\x80\\x80#s', ' ', $searchword);
                 $searchwords = preg_split("/\\s+/u", $searchworda);
                 $needle = $searchwords[0];
             }
             $row = SearchHelper::prepareSearchContent($row, $needle);
             $searchwords = array_values(array_unique($searchwords));
             $srow = strtolower(SearchHelper::remove_accents($row));
             $hl1 = '<span class="highlight">';
//.........这里部分代码省略.........
开发者ID:eshiol,项目名称:joomla-cms,代码行数:101,代码来源:view.html.php

示例3: display

 function display($tpl = null)
 {
     global $mainframe;
     require_once JPATH_COMPONENT_ADMINISTRATOR . DS . 'helpers' . DS . 'search.php';
     // Initialize some variables
     $pathway =& $mainframe->getPathway();
     $uri =& JFactory::getURI();
     $error = '';
     $rows = null;
     $total = 0;
     // Get some data from the model
     $areas =& $this->get('areas');
     $state =& $this->get('state');
     $searchword = $state->get('keyword');
     $params =& $mainframe->getParams();
     $menus =& JSite::getMenu();
     $menu = $menus->getActive();
     // because the application sets a default page title, we need to get it
     // right from the menu item itself
     if (is_object($menu)) {
         $menu_params = new JParameter($menu->params);
         if (!$menu_params->get('page_title')) {
             $params->set('page_title', JText::_('Search'));
         }
     } else {
         $params->set('page_title', JText::_('Search'));
     }
     $document =& JFactory::getDocument();
     $document->setTitle($params->get('page_title'));
     // Get the parameters of the active menu item
     $params =& $mainframe->getParams();
     // built select lists
     $orders = array();
     $orders[] = JHTML::_('select.option', 'newest', JText::_('Newest first'));
     $orders[] = JHTML::_('select.option', 'oldest', JText::_('Oldest first'));
     $orders[] = JHTML::_('select.option', 'popular', JText::_('Most popular'));
     $orders[] = JHTML::_('select.option', 'alpha', JText::_('Alphabetical'));
     $orders[] = JHTML::_('select.option', 'category', JText::_('Section/Category'));
     $lists = array();
     $lists['ordering'] = JHTML::_('select.genericlist', $orders, 'ordering', 'class="inputbox"', 'value', 'text', $state->get('ordering'));
     $searchphrases = array();
     $searchphrases[] = JHTML::_('select.option', 'all', JText::_('All words'));
     $searchphrases[] = JHTML::_('select.option', 'any', JText::_('Any words'));
     $searchphrases[] = JHTML::_('select.option', 'exact', JText::_('Exact phrase'));
     $lists['searchphrase'] = JHTML::_('select.radiolist', $searchphrases, 'searchphrase', '', 'value', 'text', $state->get('match'));
     // log the search
     SearchHelper::logSearch($searchword);
     //limit searchword
     if (SearchHelper::limitSearchWord($searchword)) {
         $error = JText::_('SEARCH_MESSAGE');
     }
     //sanatise searchword
     if (SearchHelper::santiseSearchWord($searchword, $state->get('match'))) {
         $error = JText::_('IGNOREKEYWORD');
     }
     if (!$searchword && count(JRequest::get('post'))) {
         //$error = JText::_( 'Enter a search keyword' );
     }
     // put the filtered results back into the model
     // for next release, the checks should be done in the model perhaps...
     $state->set('keyword', $searchword);
     if (!$error) {
         $results =& $this->get('data');
         $total =& $this->get('total');
         $pagination =& $this->get('pagination');
         require_once JPATH_SITE . DS . 'components' . DS . 'com_content' . DS . 'helpers' . DS . 'route.php';
         for ($i = 0; $i < count($results); $i++) {
             $row =& $results[$i]->text;
             if ($state->get('match') == 'exact') {
                 $searchwords = array($searchword);
                 $needle = $searchword;
             } else {
                 $searchwords = preg_split("/\\s+/u", $searchword);
                 $needle = $searchwords[0];
             }
             $row = SearchHelper::prepareSearchContent($row, 200, $needle);
             $searchwords = array_unique($searchwords);
             $searchRegex = '#(';
             $x = 0;
             foreach ($searchwords as $k => $hlword) {
                 $searchRegex .= $x == 0 ? '' : '|';
                 $searchRegex .= preg_quote($hlword, '#');
                 $x++;
             }
             $searchRegex .= ')#iu';
             $row = preg_replace($searchRegex, '<span class="highlight">\\0</span>', $row);
             $result =& $results[$i];
             if ($result->created) {
                 $created = JHTML::Date($result->created);
             } else {
                 $created = '';
             }
             $result->created = $created;
             $result->count = $i + 1;
         }
     }
     $this->result = JText::sprintf('TOTALRESULTSFOUND', $total);
     $this->assignRef('pagination', $pagination);
     $this->assignRef('results', $results);
     $this->assignRef('lists', $lists);
//.........这里部分代码省略.........
开发者ID:jicheng17,项目名称:comanova,代码行数:101,代码来源:view.html.php

示例4: display

 function display($tpl = null)
 {
     require_once JPATH_COMPONENT_ADMINISTRATOR . DS . 'helpers' . DS . 'search.php';
     global $mainframe;
     $params =& $mainframe->getParams();
     $uri =& JFactory::getURI();
     $error = '';
     $rows = null;
     $total = 0;
     // Get some data from the model
     $areas =& $this->get('areas');
     $state =& $this->get('state');
     $searchword = $state->get('keyword');
     $menus =& JSite::getMenu();
     $menu = $menus->getActive();
     $document =& JFactory::getDocument();
     $document->setTitle($params->get('page_title'));
     $orders = array();
     $lists = array();
     $lists['ordering'] = JHTML::_('select.genericlist', $orders, 'ordering', 'class="inputbox"', 'value', 'text', $state->get('ordering'));
     // because the application sets a default page title, we need to get it
     // right from the menu item itself
     if (is_object($menu)) {
         $menu_params = new JParameter($menu->params);
         if (!$menu_params->get('page_title')) {
             $params->set('page_title', JText::_('Search'));
         }
     } else {
         $params->set('page_title', JText::_('Search'));
     }
     // log the search
     SearchHelper::logSearch($searchword);
     //limit searchword
     if (SearchHelper::limitSearchWord($searchword)) {
         $error = JText::_('SEARCH_MESSAGE');
     }
     //sanatise searchword
     if (SearchHelper::santiseSearchWord($searchword, $state->get('match'))) {
         $error = JText::_('IGNOREKEYWORD');
     }
     if (!$searchword && count(JRequest::get('post'))) {
         $error = JText::_('Enter a search keyword');
     }
     // put the filtered results back into the model
     // for next release, the checks should be done in the model perhaps...
     $state->set('keyword', $searchword);
     if (!$error) {
         $results =& $this->get('data');
         $total =& $this->get('total');
         $pagination =& $this->get('pagination');
     }
     $this->result = JText::sprintf('TOTALRESULTSFOUND', $total);
     $this->assignRef('pagination', $pagination);
     $this->assignRef('results', $results);
     $this->assignRef('lists', $lists);
     $this->assignRef('params', $params);
     $this->assign('ordering', $state->get('ordering'));
     $this->assign('searchword', $searchword);
     $this->assign('searchareas', $areas);
     $this->assign('total', $total);
     $this->assign('error', $error);
     $this->assign('action', $uri->toString());
     parent::display($tpl);
 }
开发者ID:beingsane,项目名称:com-search-lucene,代码行数:64,代码来源:view.html.php


注:本文中的SearchHelper::limitSearchWord方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。