zend-framework - Zend DB 调用未定义的方法 where()
问题描述
以下查询返回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 查询。
解决方案
从明显的错误消息中找出表明方法 select 将返回结果集。我想我正在寻找不同 Zend DB 版本的资源。此答案适用于 2.9 版。
以下是自定义选择选项的方法:
$select = new Select;
$select->from("table_name");
$select->where("email='$str' OR uid='$str'");
$rowset = $this->table->selectWith($select);
希望这最终对某人有所帮助。
推荐阅读
- javascript - Problem with .env file being read in javascript project
- node.js - 在 firebase 函数中以特定顺序执行 axios / firebase 承诺的正确方法是什么?
- c# - UnityAction 丢失订阅事件
- go - 为什么 strings.Builder 在我的测试程序中附加字符串比 fmt.Sprint 慢?
- python - Serializing data with marshmallow if data key is unknown
- html - Element's property align-itself is not working
- android - 当它实际上不是空时从 Firestore 中检索空对象
- android - 添加firebase依赖项后无法构建项目
- c# - 如何在 C# 方法中调用停止以继续(如 Unity UNet 命令、RPC)
- mongodb - Merging fields from two different document in MongoDB