目录
回复讨论(解决方案)
首页 后端开发 php教程 新手求解关于结果集和数组的对比问题。

新手求解关于结果集和数组的对比问题。

Jun 23, 2016 pm 02:08 PM

1个表

----------------------------
| id | name | baodao| time |
| 2  |李小明 | 小明   | 22:10| 
| 1  |张三明 | 小三   | 17:10| 
------------------------------

首先我去采集 信息
$url="http://www.abc.com";
$duUrl=file_get_contents("$url");
$name="/bs\[.*\]\s*\=\s*new\s*Book\(\'[0-9]*\'\,\'(.*?)\'\,\'[0-9]*\'\,\'.*\'\,\'.*\'\,\'[0-9]*\'\,\'(.*?)\'\,\'[0-9]*\'\,\'.*\'\,\'[0-9]*\'\,\'.*\'\,\'(.*?)\'/iU";
preg_match_all($name,$duUrl,$xiaoname);
$a=$xiaoname[1];
$b=$xiaoname[2];
$c=$xiaoname[3];  // 这3个就是采集回来的values

问。假如采集回来的第一个,后边还有NNNN个。我 
$a = 李小明;
$b = 23:13;
$c =  荣荣;

求解,当获取1个 $a的值时,我想拿去和数据库的 字段 baodao 里的值对比。
如果有就修改time字段,如果没有就跳过。

大概就这个样子。新手很难了解。。PHP大虾们,指点指点咯。


回复讨论(解决方案)

补充下,

当  $a的值是 李小明,就拿这个李小明做为搜索数据库的条件。如果有就把 $c=蓉蓉 $b 2个值修改。
如果没有就跳过。

我做到找出结果集后不会了。

$mysqli=new mysqli("localhost","root","aa","aa");
$mysqli->query("set names utf8");
if(mysqli_connect_errno()){
    echo "错误:".mysqli_connect_error();
    exit;
}

还有个想法就是。

竟然采集回来的是数组。
如果能把字段 name 里的所有值都 声明回array,
那就可以使用in_array来对比。如果有就插入,如果没就。。。
但name 声明回 array,这个是怎么做的?

$sql = "update biao set baodao='$b', time='$c' where name='$a'";
$mysqli->query($sql);

但你先要解决一个问题:当出现同名时如何处理
即 name 列有两个 李小明 怎么做?

$sql = "update biao set baodao='$b', time='$c' where name='$a'";
$mysqli->query($sql);

但你先要解决一个问题:当出现同名时如何处理
即 name 列有两个 李小明 怎么做?

李小明不会出现2个以上的,只有0或者1次。

很好,那问题不就解决了?

你的意思是不是 如果 数据库有这个字段 就更新  没有就插入啊

<?php	if($mysqli->query("select * from biao where baodao = '$a'")){		//有结果就更新		$mysqli->query("update biao set baodao='$b', time='$c' where name='$a'");	}else{		//没结果就插入		$mysqli->query("insert into biao ('$a','b','c')");		}?>
登录后复制

<?php	if($mysqli->query("select * from biao where baodao = '$a'")){		//有结果就更新		$mysqli->query("update biao set baodao='$b', time='$c' where name='$a'");	}else{		//没结果就插入		$mysqli->query("insert into biao ('$a','$b','$c')");		}?>
登录后复制
登录后复制

<?php	if($mysqli->query("select * from biao where baodao = '$a'")){		//有结果就更新		$mysqli->query("update biao set baodao='$b', time='$c' where name='$a'");	}else{		//没结果就插入		$mysqli->query("insert into biao ('$a','$b','$c')");		}?>
登录后复制
登录后复制


没有就继续跳继续跳。跳到有为止,李小明的这些数据时人工添加,baodao| time 这2个字段时作为修正与日常维护所用的。

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

11个最佳PHP URL缩短脚本(免费和高级) 11个最佳PHP URL缩短脚本(免费和高级) Mar 03, 2025 am 10:49 AM

11个最佳PHP URL缩短脚本(免费和高级)

Instagram API简介 Instagram API简介 Mar 02, 2025 am 09:32 AM

Instagram API简介

在Laravel中使用Flash会话数据 在Laravel中使用Flash会话数据 Mar 12, 2025 pm 05:08 PM

在Laravel中使用Flash会话数据

构建具有Laravel后端的React应用程序:第2部分,React 构建具有Laravel后端的React应用程序:第2部分,React Mar 04, 2025 am 09:33 AM

构建具有Laravel后端的React应用程序:第2部分,React

简化的HTTP响应在Laravel测试中模拟了 简化的HTTP响应在Laravel测试中模拟了 Mar 12, 2025 pm 05:09 PM

简化的HTTP响应在Laravel测试中模拟了

php中的卷曲:如何在REST API中使用PHP卷曲扩展 php中的卷曲:如何在REST API中使用PHP卷曲扩展 Mar 14, 2025 am 11:42 AM

php中的卷曲:如何在REST API中使用PHP卷曲扩展

在Codecanyon上的12个最佳PHP聊天脚本 在Codecanyon上的12个最佳PHP聊天脚本 Mar 13, 2025 pm 12:08 PM

在Codecanyon上的12个最佳PHP聊天脚本

Laravel中的通知 Laravel中的通知 Mar 04, 2025 am 09:22 AM

Laravel中的通知

See all articles