php - 在这种情况下如何获得外部 foreach 循环值?

标签 php mysql sql arrays pdo

我正在尝试从 mysql 数据的 foreach 循环中调用所有值,并将这些值输入到另一个 mysql select 语句中。看看我下面的代码。它只能收集一个值。我正在考虑使用第一个 foreach 循环来包含整个部分,但是,由于 foreach 值是单独的,而且我需要为 PDO 准备爆炸数组。所以,最后,我想知道一种从外部 foreach 循环获取所有值的方法。欣赏。

//mysql connection code, remove because it is not relative to this question
foreach ($tag_id as $term){
	$term=$term['term'].' ';//use space to seprate each one
   
 }
	echo $term:// only can can one, how can I get all result from above foreach.
	$term=explode(' ', $term);
	
	
	$stm =$db->prepare("SELECT user_id FROM sign WHERE term IN (:term_0,:term_1,:ts.id, s.term, s.counter, os.user_id, os.id, COUNT(oserm_2,:term_3,:term_4,:term_5,:term_6,:term_7,:term_8,:term_9,:term_10)");

$term_0="$term[0]";
	$term_1="$term[1]";
	$term_2="$term[2]";
	$term_3="$term[3]";
	$term_4="$term[4]";
//following code is not relevive to this question.

最佳答案

如果你的最后一个目的是从你的值创建一个数组为什么你将数据附加到一个字符串,只需将你的数据添加到一个数组然后直接使用它。

foreach ($tag_id as $term){
    $term_arr[]=$term['term'];

 }

 print_r($term_arr);

然后就可以使用了

   $stm =$db->prepare("SELECT user_id FROM sign WHERE term IN (:term_0,:term_1,:ts.id, s.term, s.counter, os.user_id, os.id, COUNT(oserm_2,:term_3,:term_4,:term_5,:term_6,:term_7,:term_8,:term_9,:term_10)");

$term_0="$term_arr[0]";
    $term_1="$term_arr[1]";
    $term_2="$term_arr[2]";
    $term_3="$term_arr[3]";
    $term_4="$term_arr[4]";

关于php - 在这种情况下如何获得外部 foreach 循环值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28869540/

相关文章:

php - 将 PDO 结果集数组转换为可访问的数组 PHP

php - CakePHP - 包含基于特定页面的 css?

mysql - 多用途搜索如何与 Searchkick 配合使用?

php - 防止 jQuery UI 自动完成显示类似的结果

MySQL:用另一个表中的 COUNT 更新表?

sql - 根据给定的开放日期和关闭日期,生成一段时间内开放门票的计数

php - 媒体查询正在删除社交按钮图标图像

PHP反序列化数据为空,这是为什么?

mysql - 如何在系统启动时在 OS X 中启动分离的 mySQL 服务器?

sql - 从联合中获取列的最大值的行