Php 使用mysqli和fetch_对象嵌套循环

Php 使用mysqli和fetch_对象嵌套循环,php,mysql,for-loop,mysqli,Php,Mysql,For Loop,Mysqli,我想在两张桌子之间做一个比较。如果找到匹配项,我需要从一个表复制数据并将其插入另一个表中。我能够很好地从表中提取数据,但是我创建的嵌套循环有问题。它只循环并找到一个结果。当浏览表格时,有1000个匹配项,所以我认为我做错了什么。我唯一的猜测是fetch_对象的用法以及我是如何使用它的。我尝试改用fetch_assoc,但得到了相同的结果: $mysqli = mysqli_connect("127.0.0.1", "uname", "pword") or die("Can't connect t

我想在两张桌子之间做一个比较。如果找到匹配项,我需要从一个表复制数据并将其插入另一个表中。我能够很好地从表中提取数据,但是我创建的嵌套循环有问题。它只循环并找到一个结果。当浏览表格时,有1000个匹配项,所以我认为我做错了什么。我唯一的猜测是fetch_对象的用法以及我是如何使用它的。我尝试改用fetch_assoc,但得到了相同的结果:

$mysqli = mysqli_connect("127.0.0.1", "uname", "pword") or die("Can't connect to databse!");
mysqli_select_db($mysqli, "db_name") or die("Couldn't Select Database!");

$result = $mysqli->query('SELECT * FROM table_1');
$title = $mysqli->query('SELECT title FROM table_2');

if($result && $title){

   while($t_row = $title->fetch_object()){

      while($row = $result->fetch_object()){

         $s_title = strtolower($t_row->title);
         $m_title = strtolower($row->description);

         if($s_title == $m_title) {
            echo "Matched: $s_title <strong>with</strong> $m_title<br />";
            break;
         }

      }

   }
}
$mysqli=mysqli_connect(“127.0.0.1”、“uname”、“pword”)或die(“无法连接到数据库!”);
mysqli_select_db($mysqli,“db_name”)或die(“无法选择数据库!”);
$result=$mysqli->query('SELECT*fromtable_1');
$title=$mysqli->query('selecttitle fromtable_2');
如果($result&&$title){
而($t\u row=$title->fetch\u object()){
而($row=$result->fetch_object()){
$s_title=strtolower($t_row->title);
$m_title=strtolower($row->description);
如果($s_title=$m_title){
echo“匹配:$s_title$m_title
”; 打破 } } } }
您应该将第二个循环的结果存储在var中。因为在第一次查看之后,您的第二个光标位于结果的末尾

if($result && $title){
  $resulted_rows = array();

  while($row = $result->fetch_object()){
      $resulted_rows[] = strtolower($row->description);
  }


  while($t_row = $title->fetch_object()){
     $s_title = strtolower($t_row->title);

     if(in_array($s_title, $resulted_rows)) {
        echo "Matched: $s_title" . PHP_EOL;
     }
  }

}