本文整理汇总了PHP中check_condition函数的典型用法代码示例。如果您正苦于以下问题:PHP check_condition函数的具体用法?PHP check_condition怎么用?PHP check_condition使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了check_condition函数的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: processImpl
protected function processImpl(PostArrayAdapter $adapter, $button)
{
if (!$adapter->hasAllNoEmpty('folding', self::PARAM_NEW_FOLDING_IDENT)) {
return 'Не переданы все необходимые параметры.';
}
$funique = $adapter->str('folding');
$fident = check_condition($adapter->str(self::PARAM_NEW_FOLDING_IDENT), 'Пустой идентификатор фолдинга');
$folding = Handlers::getInstance()->getFoldingByUnique($funique);
$folding->assertNotExistsEntity($fident);
switch ($button) {
case self::BUTTON_SAVE_DB:
$action = PS_ACTION_CREATE;
$table = TableExporter::inst()->getTable($folding);
//Проставим руками идентификатор фолдинга для колонки из базы
$adapter->set($folding->getTableColumnIdent(), $fident);
$rec = $table->fetchRowFromForm($adapter->getData(), $action);
if (!is_array($rec)) {
//Данные для создания записи в БД не прошли валидацию
return $rec;
}
$table->saveRec($rec, $action);
//createFoldingDbRec($folding, $ident);
//createFoldingDbRec($folding, $ident);
case self::BUTTON_SAVE:
$folding->createEntity($fident);
break;
}
return new AjaxSuccess(array('url' => AP_APFoldingEdit::urlFoldingEdit($folding->getFoldedEntity($fident))));
}
示例2: getContent
/**
* Метод получает фактический контект для всплывающей страницы.
* Сама страница может вернуть или IdentPageFilling, и тогда содержимое
* будет обработано за неё. Или непосредственно IdentPageContent,
* если ей самой нужно обработать содержимое (например - акции).
*
* @return ClientBoxContent
*/
public final function getContent()
{
if ($this->cbContent) {
return $this->cbContent;
}
$this->checkAccess();
$this->profilerStart(__FUNCTION__);
$filling = null;
try {
$filling = $this->getClientBoxFilling();
check_condition($filling instanceof ClientBoxFilling, "Элемент [{$this->ident}] обработан некорректно");
} catch (Exception $ex) {
$this->profilerStop(false);
return $this->cbContent = new ClientBoxContent(PsHtml::divErr(ExceptionHandler::getHtml($ex)));
}
//Построим заголовок
$HEAD_PARAMS['class'][] = 'box-header';
if ($filling->isCover()) {
$HEAD_PARAMS['class'][] = 'covered';
$HEAD_PARAMS['style']['background-image'] = 'url(' . $this->foldedEntity->getCover()->getRelPath() . ')';
}
$HEAD_CONTENT = $filling->getHref() ? PsHtml::a(array('href' => $filling->getHref()), $filling->getTitle()) : $filling->getTitle();
$HEAD = PsHtml::html2('h3', $HEAD_PARAMS, $HEAD_CONTENT);
$BOX_CONTENT = $this->foldedEntity->fetchTplWithResources($filling->getSmartyParams());
$BOX = PsHtml::div(array(), $HEAD . $BOX_CONTENT);
$this->profilerStop();
return $this->cbContent = new ClientBoxContent($BOX, $filling->getJsParams());
}
示例3: replaceWithParams
/**
* Метод заменяет подстроку $delimiter в строке $text на элементы из массива
* подстановок $params.
*
* @param string $delimiter - элемент для поиска
* @param string $text - текст, в котором производится поиск
* @param array $params - элементы для замены
* @param bool $checkCount - признак, проверять ли совпадение кол-ва разделителей в строке и элементов для замены
* @return string
*/
public static function replaceWithParams($delimiter, $text, array $params, $checkCount = false)
{
$paramsCount = count($params);
if (!$paramsCount && !$checkCount) {
//Выходим, если параметры не переданы и нам не нужно проверять совпадение кол-ва параметров с кол-вом разделителей
return $text;
}
//Разделим текст на кол-во элеметнов, плюс один
$tokens = explode($delimiter, $text, $paramsCount + 2);
$tokensCount = count($tokens);
if ($checkCount) {
check_condition($paramsCount == $tokensCount - 1, "Не совпадает кол-во элементов для замены. Разделитель: `{$delimiter}`. Строка: `{$text}`. Передано подстановок: {$paramsCount}.");
}
if ($tokensCount == 0 || $tokensCount == 1) {
//Была передана пустая строка? Вернём её.
return $text;
}
$idx = 0;
$result[] = $tokens[$idx];
foreach ($params as $param) {
if (++$idx >= $tokensCount) {
break;
}
$result[] = $param;
$result[] = $tokens[$idx];
}
while (++$idx < $tokensCount) {
$result[] = $delimiter;
$result[] = $tokens[$idx];
}
return implode('', $result);
}
示例4: assertPrepeared
private static function assertPrepeared($tableExists = null)
{
PsConnectionPool::assertConnectiedTo(PsConnectionParams::sdkTest());
foreach (to_array($tableExists) as $table) {
check_condition(PsTable::exists($table), "Таблица {$table} не существует");
}
}
示例5: getHtmlImpl
private function getHtmlImpl(array $el)
{
$data['num'] = $el[0];
$data['sym'] = $el[1];
$data['name'] = $el[2];
$data['mass'] = $el[3];
//Подсчитаем уровни
$s1 = 0;
$s2 = 0;
$p = 0;
for ($index = 1; $index <= $data['num']; $index++) {
if ($s1 < 2) {
++$s1;
} else {
if ($s2 < 2) {
++$s2;
} else {
++$p;
}
}
}
check_condition($s1 >= 1 && $p <= 8, "For atom energy levels s1={$s1} and p={$p}");
if ($p > 0) {
$levels[] = "2p<sup>{$p}</sup>";
}
if ($s2 > 0) {
$levels[] = "2s<sup>{$s2}</sup>";
}
$levels[] = "1s<sup>{$s1}</sup>";
$data['levels'] = $levels;
return PSSmarty::template('common/mend_elem.tpl', $data)->fetch();
}
示例6: getContent
/**
* Метод безопасно получает контент.
* В случае возникновения ошибки возвращает её стек.
*/
public static function getContent($objOrTpl, $method = 'buildContent')
{
$isCallable = is_callable($objOrTpl);
$isTpl = $objOrTpl instanceof Smarty_Internal_Template;
if (!$isCallable && !$isTpl) {
check_condition(is_object($objOrTpl), 'Not object passed to ' . __FUNCTION__);
PsUtil::assertMethodExists($objOrTpl, $method);
}
$returned = null;
$flushed = null;
ob_start();
ob_implicit_flush(false);
try {
if ($isCallable) {
$returned = call_user_func($objOrTpl);
} else {
if ($isTpl) {
$returned = $objOrTpl->fetch();
} else {
$returned = $objOrTpl->{$method}();
}
}
} catch (Exception $ex) {
ob_end_clean();
return ExceptionHandler::getHtml($ex);
}
$flushed = ob_get_contents();
ob_end_clean();
return isEmpty($returned) ? isEmpty($flushed) ? null : $flushed : $returned;
}
示例7: dropTestingResults
public function dropTestingResults($idTestingRes, $userId)
{
$res = $this->getRec('select id_testing_result FROM ps_testing_results where id_user=? and id_testing_result=?', array($userId, $idTestingRes));
check_condition($res != null, "Testing result with id {$idTestingRes} is not belongs to user with id {$userId}");
$this->deleteTestingResultContent($idTestingRes);
$this->update('delete from ps_testing_results where id_testing_result=?', $idTestingRes);
}
示例8: getFoldedEntityEnsureType
/** @return FoldedEntity */
public function getFoldedEntityEnsureType($foldingType)
{
$entity = $this->getFoldedEntity();
check_condition($entity, "Не установлен контекст для определения фолдинга с типом [{$foldingType}].");
check_condition($entity->getFolding()->isItByType($foldingType), "Установленный контекст {$this->getContext()} не соответствует фолдингу с типом [{$foldingType}].");
return $entity;
}
示例9: doProcess
public function doProcess(ArrayAdapter $params)
{
$postId = $params->int('postId');
$postType = $params->str('postType');
$this->postCP = Handlers::getInstance()->getPostsProcessorByPostType($postType)->getPostContentProvider($postId);
check_condition(!!$this->postCP, "Not found post with id='{$postId}' for post type='{$postType}'");
}
示例10: getFoldings
/**
* Метод возвращает все фолдинги из всех доступных хранилищ, относящихся к заданному контексту
*/
public function getFoldings($scope = ENTITY_SCOPE_ALL)
{
switch ($scope) {
case ENTITY_SCOPE_ALL:
return $this->UNIQUE_2_FOLDING;
case ENTITY_SCOPE_SDK:
case ENTITY_SCOPE_PROJ:
if (array_key_exists($scope, $this->PROVIDER_2_UNIQUE_2_FOLDING)) {
return $this->PROVIDER_2_UNIQUE_2_FOLDING[$scope];
}
$this->PROFILER->start('Foldings[' . $scope . ']');
$this->PROVIDER_2_UNIQUE_2_FOLDING[$scope] = array();
$this->LOGGER->info();
$this->LOGGER->info('Foldings for scope [{}]:', $scope);
foreach ($this->UNIQUE_2_PROVIDER as $funique => $provider) {
if ($provider::isInScope($scope)) {
$this->PROVIDER_2_UNIQUE_2_FOLDING[$scope][$funique] = check_condition($this->UNIQUE_2_FOLDING[$funique], "Unknown folding [{$funique}]");
$this->LOGGER->info('[>] {} ({})', $funique, $provider);
}
}
$this->PROFILER->stop();
return $this->PROVIDER_2_UNIQUE_2_FOLDING[$scope];
}
raise_error("Invalid entity scope [{$scope}]");
}
示例11: onInit
protected function onInit(DirItem $di)
{
$this->info = getimagesize($di->getAbsPath());
check_condition($this->info, "В ImageAdapter передана невалидная картинка [{$di->getRelPath()}].");
$this->width = $this->info[0];
$this->height = $this->info[1];
}
示例12: ident2id
/**
* Функция возвращает код журнала по его id
*/
public static function ident2id($ident)
{
check_condition(starts_with($ident, self::IDENT_PREFIX), "Bad issue ident: [{$ident}]");
$postId = cut_string_start($ident, self::IDENT_PREFIX);
check_condition(is_numeric($postId), "Bad issue ident: [{$ident}]");
return 1 * $postId;
}
示例13: getAvatarImg
/** @return DirItem */
private function getAvatarImg()
{
if (!isset($this->avatars)) {
$this->avatars = array_values(DirManager::images('avatars')->getDirContent(null, DirItemFilter::IMAGES));
check_condition($this->avatars, 'No avatar images');
}
return $this->avatars[rand(0, count($this->avatars) - 1)];
}
示例14: makeNew
/**
* Создание новой галереи. Будет создана директория и запись в базе.
*/
public static function makeNew($gallery, $name)
{
AuthManager::checkAdminAccess();
check_condition($gallery, 'Не передано название галереи');
check_condition(!array_key_exists($gallery, self::allInsts()), "Галерея [{$gallery}] уже существует");
DirManager::gallery()->makePath($gallery);
self::inst($gallery)->saveGallery($name, array());
}
示例15: __construct
public function __construct(Smarty $smarty)
{
foreach ($this->methodsMap as $filterType => $method) {
check_condition(method_exists($this, $method), "Method [{$method}] not exists in class " . __CLASS__);
$this->CALLS[$method] = 0;
$smarty->registerFilter($filterType, array($this, "_{$method}"));
}
}