php - 从逗号分隔字段创建数组

标签 php mysql arrays foreach

您好,我正在寻找一个人来回答这个可能很简单的问题。

目前我有两个表“程序”和“工作角色”,我的想法是我希望能够创建一个子表来链接哪些程序适用于哪些工作角色。目前,这是通过两个表完成的,方法是在过程表中创建一条记录,然后在名为“procedures_jobtitles”的表中创建后续子记录,该表只是一对多链接表。

我正在探索在过程表中有一个名为“适用于”的字段的想法,这将是一个以复选框形式显示的下拉框,其想法是,当我创建过程时,在添加/编辑页面有一个单独的选项卡,其中显示此字段,这将显示所有职位角色,以便用户只需勾选适用的职位即可。

我的问题是通过这种方式,字段值存储为 (1,2,5,10,11,12),其中这些数字代表职位描述表的外键。我想要的是获取“适用于”字段并将其转换为数组并提取用逗号分隔的每个值,因此对于上面的示例,它会给我一个结果:

1
2
5
10
11
12

然后,我可以运行 foreach 查询,并在保存后通过事件将这些记录插入到链接表中。这背后的想法是,如果您有 1 或 2 个职位描述,手动添加到子表中不是问题,但是当您有 20 个左右的职位名称时,就会变得更加耗时。我曾尝试为此搜索谷歌,但恐怕我对数组的基本理解有限,所以我不知道要寻找什么。

任何使用我给出的示例字段的帮助,将不胜感激

最佳答案

使用explode()

例如

<?php
$mystring = "1,2,5,10,11,12";
$myarray = explode(",",$mystring);

//Output each element from $myarray:
foreach($myarray as $item)
{
    echo $item."<br>";
    //or do something else, e.g. insert these records into the link table
}

关于php - 从逗号分隔字段创建数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36575938/

相关文章:

PHP 命名空间与 Phalcon、Vagrant、Apache2 的冲突

php - Laravel 中如何从数组中获取值

php - 如何在 php 和 sql 中将标签插入 3 表系统

javascript - 按最接近已发生和将要发生的日期排序

php - 根据变量值发送数据到不同的表

php - 防止复制使用 dompdf 创建的 pdf 中的内容

python - Flask-MySQL 第二次运行 View 时出现 "closing a closed connection"错误

java - MySQL - 仅从列中选择默认值

php - json_encode 添加反斜杠

arrays - 如何从 static "Array of TPoint"中删除/删除特定成员或元素?