Zend Mysql 获取 ENUM 值
我在我的应用程序中使用Zend Framework
。我想知道如何从 MySQL
表中的 ENUM 字段获取值。
例如:我有 permissions
字段 (ENUM
( '删除_管理员','编辑_管理员'))。如何以最好的方式获取 array('delete_admin', 'edit_admin') ?
提前谢谢您。
I use Zend Framework
in my application. And I want to know how to get values from ENUM field in MySQL
table.
For example: i have permissions
field (ENUM
('delete_admin', 'edit_admin')). How to get array('delete_admin', 'edit_admin') in he best way?
Thank you in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(6)
将方法添加到 Zend_Db_Table_Abstract 扩展类中。
Add a method to your Zend_Db_Table_Abstract extended class.
应用程序模型映射器的方法。假设 your_field_name 是您需要列出其 ENUM 值的数据库列的名称。
该方法返回一个数组,其中包含 your_field_name 列的 ENUM 值。
A method for your application model mapper. Assuming your_field_name is the name of the database column that you need to list the ENUM values of.
The method returns an array with the ENUM values of your_field_name column.
我用下面的方式做到了:
I did it in next way:
我就是这样做的:
在你的模型中放入这个
然后使用这个:
This is how i did it:
in your model put this
then use this:
这是从 MySQL 获取爆炸就绪字符串的方法:
您只需对其执行
explode(',' $result)
即可获取包含枚举值的数组。请记住,您需要对 information_schema-database 进行读取访问才能执行此操作。
This is how you can get an explode-ready string from MySQL:
You just need to do a
explode(',' $result)
on it to get an array with your enum-values.Remember that you need read-access to information_schema-database to do this.
将其添加到您的 Zend_Table 类中:
Add this in your Zend_Table class: