Пример #1
0
 static function parseKey($str)
 {
     static $cache = array();
     if (isset($cache[$str])) {
         return $cache[$str];
     }
     $words = array();
     $arr = explode(' ', $str);
     foreach ($arr as $cur) {
         if ($cur !== '') {
             if (!isset(hq::$stopWords[$cur])) {
                 $cur = hq::dropPlus($cur);
                 if ($cur !== '') {
                     $words[] = array(hq::morf($cur), '!' . hq::dropSyntax($cur));
                 }
             }
         }
     }
     $cache[$str] = $words;
     return $words;
 }
Пример #2
0
 static function replace($str, $arr)
 {
     $res = array();
     foreach ($arr as $key => $data) {
         $cur = hq::match($data);
         if ($cur || $cur === '') {
             $res[$key] = $cur;
         }
     }
     //echo '$res=';
     //print_r($res);
     //print_r(array_values($res));
     //echo "str=$str";
     //return str_replace('Комнаты','Кондиционеры 2334',$str);
     return str_replace(array_keys($res), array_values($res), $str);
 }
Пример #3
0
var_dump(HQ::match(array('кондиционеры москва' => true)));
echo '<br />Must be true ';
var_dump(HQ::match(array('кондиционер москве' => true)));
echo '<br />Must be true ';
var_dump(HQ::match(array('кондиционер в москве' => true)));
echo '<br />Must be true ';
var_dump(HQ::match(array('кондиционер' => true)));
echo '<br />Must be true ';
var_dump(HQ::match(array('москвы' => true)));
echo '<br />Must be true ';
var_dump(HQ::match(array('Москвы' => true)));
echo '<br />Must be false ';
var_dump(HQ::match(array('бла' => true)));
echo '<br />Must be false ';
var_dump(HQ::match(array('береза' => true)));
echo '<br />Must be false ';
var_dump(HQ::match(array('москва береза' => true)));
echo '<br />Must be false ';
var_dump(HQ::match(array('кондиционер +в москве' => true)));
echo '<h1>Replace</h1>';
echo hq::replace('Комнаты в Москве недорого!', array('Комнаты' => array('Кондиционеры')));
echo '<h1>defineGetParamAnyRef</h1>';
hq::defineGetParamAnyRef(array('москва' => array('order_by' => 'price')));
print_r(HQ::$definedGetParams);
echo '<h1>redirectFromAnyPageOnce</h1>';
hq::redirectFromAnyPageOnce(array('квартиры' => '/flat.php', 'москва' => '/msk.php'));
hq::redirectFromAnyPageOnce(array('москва' => '?x=1'));
echo '<h1>redirectOnce</h1>';
hq::redirectOnce(array('/' => array('москва' => '?x=1')));
hq::redirectOnce(array('/page' => array('москва' => '?x=1'), '/' => array('москва' => '?x=2')));