Вызов Zend DB для неопределенного метода where () - PullRequest
0 голосов
/ 28 мая 2018

Следующий запрос возвращает ошибку 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;

Любойзнает почему?Я просто пытаюсь использовать «где» для выполнения OR MySql-запроса.

1 Ответ

0 голосов
/ 28 мая 2018

Понял это из очевидного сообщения об ошибке, указывающего, что метод select вернет набор результатов.Я думаю, что я искал источники для другой версии Zend DB.Этот ответ предназначен для версии 2.9.

Вот как можно настроить параметры выбора:

$select = new Select;
$select->from("table_name");
$select->where("email='$str' OR uid='$str'");
$rowset = $this->table->selectWith($select);

Надеюсь, что это в конечном итоге кому-нибудь поможет.

...