数组类型存入数据库字段及通过数组查询的实现方法(PHP)

本文介绍了一种使用PHP处理数组存取数据库的方法。首先通过特定格式将数组存储到数据库字段,接着利用正则表达式实现数组字符串的高效查询。具体步骤包括使用explode函数将字符串转换为数组,再通过循环构建正则表达式查询条件,并最终生成SQL查询语句。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.数组存储到数据库:

       由表单方式将特定格式文本数组(如$r=1/2/3/4)存入数据库字段r中。

2.查询数据库中的数组字符串

在表单中输出要查询存在的数值  如:$a= 1/3       

将表单传递来的 数组字符串 用explode ("/",$a)打散成  数组$arry=explode ("/",$a);

    将数组各值 转变成 正则表达式的查询语句:   $arry[$n]= "r regexp ('(/|^)$arry[$n](/|$)')";

    再通过implode 将语句用and 连接  返回给 SQL查询语句:return implode(" and ",$arry);  

    返回为 $q1=r regexp ('(/|^)1(/|$)') and r regexp ('(/|^)3(/|$)') 

    SELECT * FROM 表名 where  $q1。

function rp_s($a,r)
{ $arry=explode("/",$a);  /* 以/打散成数组 */
                   $arrlength=count($arry);
         for ($n=0;$n<$arrlength;$n++)
                {
                    $arry[$n]= "r regexp ('(/|^)$arry[$n](/|$)')"; 
               
                       }
   
         return implode(" and ",$arry);   /* 胶合成字符串 */
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值