本文整理汇总了PHP中freelancer::getFrlCount方法的典型用法代码示例。如果您正苦于以下问题:PHP freelancer::getFrlCount方法的具体用法?PHP freelancer::getFrlCount怎么用?PHP freelancer::getFrlCount使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类freelancer
的用法示例。
在下文中一共展示了freelancer::getFrlCount方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: x____getFrlCount
/**
* Возвращает количество подходящих соискателей по фильтру, переданному с http://hh.ru/employer/resumesSearch.do
* а также линк на результаты.
*
* @param array $filter
* <hh:getFrlCount>
* <v-p> <!-- фильтр, массив -->
* <v k="kword">тест,программирование, буш, Java Script</v> <!-- ключевые слова, через запятую -->
* <v k="regions">1001,456</v> <!-- ид. ХХ-регионов. Если выбран родитель, то подразумевается, что должны быть включены все дети -->
* <v k="fields">1,2,3</v> <!-- ид. ХХ-профобластей. Если указана, то необходимо включить все специализации, относящиеся к этой области -->
* <v k="specs">1,2,3</v> <!-- ид. отдельный ХХ-специализаций -->
* <v k="cost"> <!-- месячная зарплата -->
* <v k="from">12</v> <!-- от -->
* <v k="to">999</v> <!-- до -->
* <v k="currency">USD</v> <!-- валюта -->
* </v>
* <v k="wo_cost">1</v> <!-- включать ли в поиск людей, не указавших ЗП -->
* <v k="age"> <!-- возраст -->
* <v k="from">12</v> <!-- от -->
* <v k="to">999</v> <!-- до -->
* </v>
* <v k="wo_age">1</v> <!-- включать ли в поиск людей, не указавших возраст -->
* </v-p>
* </hh:getFrlCount>
*
* @return array
*/
protected function x____getFrlCount($args)
{
list($filter) = $args;
require_once ABS_PATH . '/classes/freelancer.php';
require_once ABS_PATH . '/classes/memBuff.php';
if (!is_array($filter)) {
$filter = array();
}
$hh = new hh();
$memBuff = new memBuff();
$memkey = md5($hh->packFilter($filter));
if ($mret = $memBuff->get($memkey)) {
return $mret;
}
if ($filter['kword']) {
require_once ABS_PATH . '/classes/kwords.php';
$kwords = new kwords();
$filter['orig_kwords'] = $filter['kword'];
$filter['kword'] = $kwords->getKeys($filter['kword']);
}
if ($filter['regions']) {
list($filter['country'], $filter['city']) = $hh->getCCByHHRegions($filter['regions']);
unset($filter['regions']);
}
$pp1 = $pp2 = array();
if ($filter['fields']) {
if ($ppx = $hh->getProfessionsByHHFields($filter['fields'])) {
$pp1 = $ppx;
}
unset($filter['fields']);
}
if ($filter['specs']) {
if ($ppx = $hh->getProfessionsByHHSpecs($filter['specs'])) {
$pp2 = $ppx;
}
unset($filter['specs']);
}
if ($pp1 || $pp2) {
$filter['prof'][1] = $pp1 + $pp2;
}
if ($filter['cost']) {
$filter['cost']['type_date'] = 1;
$filter['cost']['cost_from'] = $filter['cost']['from'];
$filter['cost']['cost_to'] = $filter['cost']['to'];
if (($filter['cost']['cost_type'] = hh::$hh_currency2ex[strtoupper($filter['cost']['currency'])]) < 0) {
$hhc = $hh->getHHCurrency($filter['cost']['currency']);
$filter['cost']['cost_type'] = freelancer::RUR;
$filter['cost']['cost_from'] /= $hhc['rate'];
$filter['cost']['cost_to'] /= $hhc['rate'];
}
$filter['cost'] = array($filter['cost']);
}
if (isset($filter['wo_cost'])) {
$filter['wo_cost'] = $this->ex2pg($filter['wo_cost'], EXTERNAL_DT_BOOL);
}
if ($filter['age']) {
$filter['age'][0] = (int) $filter['age']['from'];
$filter['age'][1] = (int) $filter['age']['to'];
}
if (isset($filter['wo_age'])) {
$filter['wo_age'] = $this->ex2pg($filter['wo_age'], EXTERNAL_DT_BOOL);
}
if ($count = freelancer::getFrlCount($filter)) {
$link = $hh->saveFilter($filter);
}
$ret = array('count' => $count, 'link' => $GLOBALS['host'] . '/freelancers/?hhf=' . $link);
$memBuff->set($memkey, $ret, 1800);
return $ret;
}