gpt4 book ai didi

php - mysql 表中的枚举值

转载 作者:行者123 更新时间:2023-11-29 10:52:51 37 4
gpt4 key购买 nike

我的表中有一个 enum 列,我试图在下拉列表中获取我在表中设置的值。因此,首先我编写了此查询来获取 column_typecolumn_name

"SELECT `COLUMN_NAME`,`DATA_TYPE`,`COLUMN_TYPE` FROM `INFORMATION_SCHEMA`.`COLUMNS` WHERE `TABLE_SCHEMA`='devsbh' AND `TABLE_NAME`='modules' AND `COLUMN_NAME` NOT IN ('created_at', 'updated_at')"

然后我这样做是为了得到枚举值,如下所示

<?php 
$regex = "/'(.*?)'/";
preg_match_all( $regex , $modules->COLUMN_TYPE , $enum_array );
$enum_fields = $enum_array[1];
?>

我的显示是这样的

PS:使用laravel的blade模板引擎。

{!! Form::select($modules->COLUMN_NAME,$enum_fields) !!}

到目前为止一切都是正确的。当我尝试存储它时,它也尝试保存为 Y => 0 和 N => 1。如何获得与枚举值相同的键 => 值?

根据控制台,$enum_fields 的值为 [0]=>Y 、 [1]=>N。

最佳答案

您可以使用array_combine方法使数组的键和值相同

<?php
$regex = "/'(.*?)'/";
preg_match_all( $regex , $modules->COLUMN_TYPE , $enum_array );
$keyValueSame = array_combine($enum_array[1],$enum_array[1]);
?>

现在 $keyValueSame 数组的键和值将具有相同的值。

控制台中 $keyValueSame 的值为 [Y]=>Y , [N]=>N。

关于php - mysql 表中的枚举值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43441185/

37 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com