以下查询返回Call to undefined method Zend\Db\ResultSet\ResultSet::where()
错误。
$rowset = $this->table->select()->where("email='$str'");
然而这有效:
$rowset = $this->table->select(["email" => $str]);
以下是依赖项:
use Zend\Db\Adapter\Adapter;
use Zend\Db\Sql\Where;
use Zend\Db\Sql\Select;
use Zend\Db\TableGateway\TableGateway;
use Zend\Db\TableGateway\Feature\RowGatewayFeature;
use Zend\Db\TableGateway\Feature\MetadataFeature;
use Zend\Db\TableGateway\Feature\FeatureSet;
任何人都知道为什么?我基本上只是试图使用'where'来运行OR
MySql查询。
答案 0 :(得分:1)
从显而易见的错误消息中找出它,表明方法select将返回结果集。我想我正在寻找不同的Zend DB版本的来源。这个答案适用于2.9版本。
以下是如何自定义选项:
$select = new Select;
$select->from("table_name");
$select->where("email='$str' OR uid='$str'");
$rowset = $this->table->selectWith($select);
希望这最终有助于某人。