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


PHP Where::orPredicate方法代码示例

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


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

示例1: getPredicate

 public function getPredicate($degreesOfKinship = self::SIBLINGS)
 {
     $siblingCondition = new Where();
     $personaId = $this->personaId;
     $fatherId = $this->fatherId;
     $motherId = $this->motherId;
     if ($this->isFlagSet($degreesOfKinship, self::BROTHER)) {
         $where = (new Where())->equalTo('father_id', $fatherId)->equalTo('mother_id', $motherId)->equalTo('gender', self::GENDER_MALE)->notEqualTo('id', $personaId);
         $siblingCondition->orPredicate($where);
     }
     if ($this->isFlagSet($degreesOfKinship, self::SISTER)) {
         $where = (new Where())->equalTo('father_id', $fatherId)->equalTo('mother_id', $motherId)->equalTo('gender', self::GENDER_FEMALE)->notEqualTo('id', $personaId);
         $siblingCondition->orPredicate($where);
     }
     if ($this->isFlagSet($degreesOfKinship, self::HALF_BROTHER_PATERNAL)) {
         $where = (new Where())->equalTo('father_id', $fatherId)->equalTo('gender', self::GENDER_MALE)->notEqualTo('id', $personaId);
         $where->andPredicate((new Where())->notEqualTo('mother_id', $motherId)->orPredicate((new Where())->isNull('mother_id')));
         $siblingCondition->orPredicate($where);
     }
     if ($this->isFlagSet($degreesOfKinship, self::HALF_BROTHER_MATERNAL)) {
         $where = (new Where())->equalTo('mother_id', $motherId)->equalTo('gender', self::GENDER_MALE)->notEqualTo('id', $personaId);
         $where->andPredicate((new Where())->notEqualTo('father_id', $fatherId)->orPredicate((new Where())->isNull('father_id')));
         $siblingCondition->orPredicate($where);
     }
     if ($this->isFlagSet($degreesOfKinship, self::HALF_SISTER_PATERNAL)) {
         $where = (new Where())->equalTo('father_id', $fatherId)->equalTo('gender', self::GENDER_FEMALE)->notEqualTo('id', $personaId);
         $where->andPredicate((new Where())->notEqualTo('mother_id', $motherId)->orPredicate((new Where())->isNull('mother_id')));
         $siblingCondition->orPredicate($where);
     }
     if ($this->isFlagSet($degreesOfKinship, self::HALF_SISTER_MATERNAL)) {
         $where = (new Where())->equalTo('mother_id', $motherId)->equalTo('gender', self::GENDER_FEMALE)->notEqualTo('id', $personaId);
         $where->andPredicate((new Where())->notEqualTo('father_id', $fatherId)->orPredicate((new Where())->isNull('father_id')));
         $siblingCondition->orPredicate($where);
     }
     return $siblingCondition;
 }
开发者ID:samizdam,项目名称:PhamilyFramework,代码行数:36,代码来源:SiblingsQueryCondition.php

示例2: fetchAll

 /**
  * Fetch all or a subset of resources
  *
  * @param  array $params
  * @return ApiProblem|mixed
  */
 public function fetchAll($params = array())
 {
     $where = new Where();
     if (isset($params['nome']) && $params['nome'] != '') {
         $likeSpec = new Where();
         $likeSpec->like('nome', '%' . $params['nome'] . '%');
         $where->addPredicate($likeSpec);
         $likeSpec = new Where();
         $likeSpec->like('sobrenome', '%' . $params['nome'] . '%');
         $where->orPredicate($likeSpec);
     }
     $sort = null;
     if (in_array($params['sort'], array_keys((new ClienteEntity())->getArrayCopy()))) {
         $sort = $params['sort'];
     }
     $dbTableGatewayAdapter = new DbTableGateway($this->tableGateway, $where, $sort);
     return new ClienteCollection($dbTableGatewayAdapter);
 }
开发者ID:siwane,项目名称:tutorial-angularjs-apigility-crud,代码行数:24,代码来源:ClienteResource.php


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