foreach 相关问题

foreach是一个循环结构,它为列表/集合/数组中的每个元素执行给定的代码片段。与for循环相比,foreach循环不需要编码器维护计数器变量以避免一对一(fencepost)错误。建议在需要对整个数组/列表/集合进行简单迭代时使用。

同步循环两个数组

我的html是这样的 我的html是这样的 <table> <tr> <td><input type="text" name="input_1[]</td> <td><input tpye="text" name="input_2[]</td> </tr> <tr> <td><input type="text" name="input_1[]</td> <td><input tpye="text" name="input_2[]</td> </tr> </table> 提交后,值将发布到下一个站点。 我知道如何处理一个array[],就像这样: foreach($array as $var) { echo $var; } 所以,我的问题是,我必须在每个内部构建一个sql查询,它应该像 $sql="INSERT into table (value1,value2) VALUES (input_1,input_2)" 如何解决这个问题,我不认为每个人都可以处理这样的事情: foreach($array1 as $var1, $array2 as $var2){ .... 您可以使用 for 循环来实现它: <?php $a = $_POST['input_1']; $b = $_POST['input_2']; for($i=0; $i<count($a); $i++) { $sql="INSERT into table (value1,value2) VALUES ('{$a[$i]}','{$b[$i]}')"; echo $sql .'<br>'; } 您可以在 foreach 中使用 $key,但这要求键存在于两个数组中。您可以使用 isset() 轻松检查。 $arr1 = array(...); $arr2 = array(...); foreach($arr1 as $key => $value) { echo $arr1[$key]; echo $arr2[$key]; } 在您的 HTML 中,tpye 应该是 type。尝试像下面这样 HTML 中 <form action="test.php" method="post"> <table> <tr> <td><input type="text" name="input_1[]"> </td> <td><input type="text" name="input_2[]"></td> </tr> <tr> <td><input type="text" name="input_1[]"></td> <td><input type="text" name="input_2[]"></td> </tr> <tr> <td></td> <td><input type="submit"></td> </tr> </table> </form> 在 PHP 中(test.php) $post = $_POST; $count = 0; for($i = 0; $i < count($post['input_1']); $i++){ $inp1 = $post['input_1'][$count]; $inp2 = $post['input_2'][$count]; $sql = "INSERT into table (value1,value2) VALUES ('$inp1', '$inp2')"; $count++; } 首先,看一下你的html: <td><input type="text" name="input_1[]</td> 应该是 <td><input type="text" name="input_1[]"/></td> 第一个解决方案,如果您使用 PDO 连接到数据库: <?php if($_SERVER['REQUEST_METHOD'] === 'POST') { //if something posted to server $array = array($_POST['input_1'], $_POST['input_2']); $stmt = $db->prepare("INSERT into table (value1, value2) VALUES (?, ?)"); foreach($array as $key) { $stmt->execute(array($key[0], $key[1])); } } 如果您使用MySQLi,这是第二个解决方案: <?php if($_SERVER['REQUEST_METHOD'] === 'POST') { $array = array($_POST['input_1'], $_POST['input_2']); $stmt = $db->prepare("INSERT into table (value1, value2) VALUES (?, ?)"); foreach($array as $key) { $stmt->bind_param('ss', $key[0], $key[1]); $stmt->execute(); } $stmt->close(); } 我在这里使用准备好的语句,因为 1. 它更快,2. 它大大降低了 SQL 注入 的风险。请记住,我们在这里接受用户输入,这永远不安全!

回答 4 投票 0

使用字符串值作为名称访问变量[重复]

我在另一个foreach中有这个php代码foreach循环,我需要的是在每个循环上一一设置所有数组值(红色,蓝色,绿色,黑色)。我需要将 $green 更改为 数据百分比=“&l...

回答 1 投票 0

如何迭代对象属性中嵌套在对象数组中的所有级别的对象数组?

对象(stdClass)[1] 公共“收件箱”=> 大批 0 => 对象(stdClass)[2] 公共'来自'=>字符串'55512351'(长度= 8) 公共“日期”=>字符串...

回答 1 投票 0

如何循环遍历这个二维数组? [重复]

嗯,我对 PHP 数组的使用比较陌生,我有以下数组,我需要循环遍历这个数组,2280 和 2307 是标识符。 我发现很难想出一个 foreach(...

回答 2 投票 0

动态填充数组声明内的子数组

我正在尝试使用 for 循环在数组内创建一个数组 - 这是我的代码: 大批( '标签' => '分配给用户', 'desc' => '选择用户', 'id' => $前缀 。 '客户', ...

回答 4 投票 0

数组内的Foreach循环

我正在尝试使用 for 循环在数组内创建一个数组 - 这是我的代码: 大批( '标签' => '分配给用户', 'desc' => '选择用户', 'id' => $prefix.'client', ...

回答 4 投票 0

仅在白名单数组中找到 id 时才打印数组行数据

我有一个视频类别列表,通过这个简单的 foreach 循环,我可以在超链接内显示所有类别。 现在,我想做的是根据类别仅显示其中的一些...

回答 4 投票 0

在循环中递增变量名称[重复]

我正在努力获取正确的语法来解析数组中的值以与 foreach 循环一起使用。我有一个数组: $contacts_array 其中包含一个或多个我需要查找的名称...

回答 2 投票 0

仅访问二维数组的第一行

我正在运行正则表达式来匹配 Twitter 主题标签的所有实例。它返回得很好,但现在我只想循环第一组并返回我的#hello、#world、#hello-world,而不是第二组...

回答 3 投票 0

抓取 HTML 内容时结果数组中的元素加倍

我正在浏览旧页面,其中包含超过 10 000 条评论,我正尝试将其导入到 WordPress。 我正在使用 simple_html_dom.php 库,在本例中这并不重要。 我正在做的是

回答 2 投票 0

循环包含带引号的值的 csv 字符串数组,然后返回每个 csv 字符串的第一个值

我正在尝试使用 foreach() 循环数组。 当我测试下面的代码时, $aa = array("'a1','a2'","'b1','b2'","'c1','c2'"); foreach($aa 为 $bb){ $cc = 数组($...

回答 2 投票 0

数组中的foreach循环

我有一些关于 foreach 数组的问题。 如果我有一些数据:“'a1','a2'”,“'b1','b2'”,“'c1','c2'”我厌倦了获取a1,b1,c1。 当我测试下面的代码时, $aa = array("'a1','a2'","'b1','b2'",...

回答 2 投票 0

循环未知深度的数组

如果数据是1级或者多于1级,如何循环数组? 我尝试过 foreach ($array['bGeneral'] as $item) { 回声 $item['bItem']; } 但对于具有 1 级数据的数组会出现错误

回答 2 投票 0

循环中构建的数组仅保留最后遇到的值

我创建了 2 个数组,我正在尝试将第一个数组显示给另一个数组。所以我使用了 foreach 语句,这样我就可以像这样显示第二个数组中的每个值 $第一个=数组( '12:00 上午', '1:00...

回答 4 投票 0

从二维数组的一列中获取值[重复]

我有这个数组,我做了一个 print_r($resultArray) 并得到了这些结果; Array ( [0] => Array ( [invoiceid] => 992 [客户] => www [发票交付方法] => 电子邮件 [日期] => 2011-...

回答 3 投票 0

使用简单 HTML DOM 解析器从 HTML 文档中的所有 <a> 标签生成 href 字符串数组

我想用从这个 foreach 获得的链接填充一个数组。我怎样才能做到这一点? foreach($html->find('a') as $link) { 回声 $link->href; //输出:link1.html link2.html link3.h...

回答 6 投票 0

VBA 触发包含 Left() 的 IF 语句

我正在尝试在特定情况下动态地将 2 个单元格连接在一起,但我无法触发任何公式更改。如果 A 栏显示“是”并且

回答 1 投票 0

我的 For Each Loop 如何循环到下一行?

For Each 循环不是循环到下一行并应用我的代码,而是从同一行的下一个单元格开始。 我是 VBA 的初学者,我的所有代码都来自互联网。我正在与

回答 1 投票 0

使用数据集列值在 foreach 工件中查找工件

我正在尝试在 foreach 中使用 ADF 查找工件的数据集结果。 我需要在 FOREACH 工件内的查询中使用结果的每一列。 查找链接到 FOREACH 和 ...

回答 1 投票 0

foreach() 仅将最后一个值保存到结果数组[重复]

我有一个 $_POST 数组,如下所示 大批 ( [0] => 编辑 [1] => smith.co.uk [2] => http://edsmith.co.uk/smith.jpg [3] => 已发表 [4] => 福特·阿滕伯勒 ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.