对于想了解mysql_fetch_array跳过第一行的读者,本文将提供新的信息,我们将详细介绍mysqlslave跳过,并且为您提供关于2019-07-24PHP中mysql_fetch_assoc
对于想了解mysql_fetch_array跳过第一行的读者,本文将提供新的信息,我们将详细介绍mysql slave 跳过,并且为您提供关于2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?、array_slice mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别、mysql_fetch_array vs mysql_fetch_assoc vs mysql_fetch_object?、mysql_fetch_array 与 mysql_fetch_object函数与用法的有价值信息。
本文目录一览:- mysql_fetch_array跳过第一行(mysql slave 跳过)
- 2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?
- array_slice mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
- mysql_fetch_array vs mysql_fetch_assoc vs mysql_fetch_object?
- mysql_fetch_array 与 mysql_fetch_object函数与用法
mysql_fetch_array跳过第一行(mysql slave 跳过)
编辑:感谢你们的快速反应-我最终切换到mysql_fetch_assoc()并使用do … while,我很高兴。
我正在使用相同的过程来创建和填充表-一切正常,除了 在每个表中跳过第一行 。由于我似乎无法查明问题,可以用另一双眼睛。提前致谢。
$query = "SELECT * FROM members"; $results = mysql_query($query); $row = mysql_fetch_array($results); //echo my <table> start and headings; while ($row = mysql_fetch_array($results)) { echo "<tr><td>".$row[''Last Name'']."</td>"; echo "<td>".$row[''First Name'']."</td>"; echo "<td>".$row[''Middle Name'']."</td>"; echo "<td>".$row[''Sfx'']."</td>"; echo "<td>".$row[''Prf'']."</td>"; echo "<td>".$row[''Spouse/SO'']."</td>"; echo "<td>".$row[''Ancestor'']."</td>"; echo "<td>".$row[''Status'']."</td>"; echo "<td>".$row[''Address 1'']."</td>"; echo "<td>".$row[''Address 2'']."</td>"; echo "<td>".$row[''City'']."</td>"; echo "<td>".$row[''ST'']."</td>"; echo "<td>".$row[''Zip 5'']."</td>"; echo "<td>".$row[''Zip 4'']."</td>"; echo "<td>".$row[''Home Phone'']."</td>"; echo ''<td><a href="mywebsite/mypage.php?id='' . $row[''id''] . ''">Bio</a></td></tr>''; } echo "</table><hr>";
答案1
小编典典您正在调用mysql_fetch_array两次…循环前一次,循环时一次。
如果您需要种子行来构建标题行,则最好在此处使用do .. while循环。
$query = "SELECT * FROM members";$results = mysql_query($query);$row = mysql_fetch_assoc($results);//echo my <table> start and headings;do { echo "<tr><td>".$row[''Last Name'']."</td>"; echo "<td>".$row[''First Name'']."</td>"; echo "<td>".$row[''Middle Name'']."</td>"; echo "<td>".$row[''Sfx'']."</td>"; echo "<td>".$row[''Prf'']."</td>"; echo "<td>".$row[''Spouse/SO'']."</td>"; echo "<td>".$row[''Ancestor'']."</td>"; echo "<td>".$row[''Status'']."</td>"; echo "<td>".$row[''Address 1'']."</td>"; echo "<td>".$row[''Address 2'']."</td>"; echo "<td>".$row[''City'']."</td>"; echo "<td>".$row[''ST'']."</td>"; echo "<td>".$row[''Zip 5'']."</td>"; echo "<td>".$row[''Zip 4'']."</td>"; echo "<td>".$row[''Home Phone'']."</td>"; echo ''<td><a href="mywebsite/mypage.php?id='' . $row[''id''] . ''">Bio</a></td></tr>'';} while ($row = mysql_fetch_assoc($results));echo "</table><hr>";
2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?
mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组
来看下面的例子:
数据库中有上述几条数据,一般我们想取用就要按照如下代码:
$con = mysql_connect(''127.0.0.1'',''root'',''root'');
mysql_query(''use news'');
mysql_query(''set names utf8'');
$sql = "select * from assoc";
$res = mysql_query($sql);
写到这里,$res如果你打印的话,会发现他是一个资源型的结果集,我们并不能直接用,这时候我们就需要用到mysql_fetch_assoc() 函数从结果集中取得一行作为关联数组,然后用while进行循环,再把它存放在数组中,再进行操作。
为了让mysql_fetch_assoc 和 mysql_fetch_array的区别更明显,在这里先不进行循环,来看下两种结果有何区别?
//用array_fetch_assoc
$row = mysql_fetch_assoc($res);
print_r($row);
打印结果是:Array ( [id] => 1 [content] => 一 );可以看到我们得到的是一个关联数组,数据库字段为key值为value。
mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有
//用mysql_fetch_array
$row = mysql_fetch_array($res);
print_r($row);
打印结果是:Array ( [0] => 1 [id] => 1 [1] => 一 [content] => 一 );可以看到我们返回的结果既有数据库字段为key值为value的关联数组,也有数字下标,数据库中的值为value的索引数组。在有些情况下可能只会返回其中的一种或两种均有。如果想要指定返回某一种数组我们可以在括号内再加一个参数。
$row = mysql_fetch_array($res,MYSQL_ASSOC);
print_r($row);
打印结果是:Array ( [id] => 1 [content] => 一 );可以看到我们在后面加入一个参数返回到的就是一个关联数组。像这样的参数有三个:
- MYSQL_ASSOC - 关联数组
- MYSQL_NUM - 数字数组
- MYSQL_BOTH - 默认。同时产生关联和数字数组
我们可以根据实际需要进行选择。
array_slice mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别
复制代码 代码如下:
$link=mysql_connect(''localhost'',''root'',”);
mysql_select_db(''abc'',$link);
$sql = “select * from book”;
$result = mysql_query($sql);
while($row = mysql_fetch_row($result))
{
echo $row[''cid''].''::''.$row[1].''
'';
}
$result = mysql_query($sql);
while($row = mysql_fetch_array($result))
{
echo $row[''cid''].''::''.$row[1].''
'';
}
$result = mysql_query($sql);
while($row = mysql_fetch_object($result))
{
echo $row->cid.''::''.$row->title.”
”;
}
$result = mysql_query($sql);
while($row = mysql_fetch_assoc($result))
{
echo $row[''cid''].''::''.$row[1].''
'';
}
?>
分析:
mysql_fetch_row,这个函数是从结果集中取一行作为枚举数据,从和指定的结果标识关联的结果集中取得一行数据并作为数组返回。每个结果的列储存在一个数组的单元中,偏移量从 0 开始。 注意,这里是从0开始偏移,也就是说不能用字段名字来取值,只能用索引来取值,所以如下代码是取不到值的:
while($row = mysql_fetch_row($res)){
echo $row[''cid''].''::''.$row[1].”;
} //这里的$row[''cid''] 取不到值。
mysql_fetch_array,从结果集中取得一行作为关联数组,或数字数组,或二者兼有,除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。 也就是说他得到的结果像数组一样,可以用key或者索引来取值,所以
while($row = mysql_fetch_array($res)){
echo $row[''cid''].''::''.$row[1].”;
}//这里$row[''cid''],$row[1]都能得到相应的值。
mysql_fetch_object,顾名思义,从结果集中取得一行作为对象,并将字段名字做为属性。所以只有这样才能取到值
while($row = mysql_fetch_object($res)){
echo $row->cid.''::''.$row->title.”";
}
mysql_fetch_assoc,从结果集中取得一行作为关联数组,也就是说这个函数不能像mysql_fetch_row那样用索引来取值,只能用字段名字来取,所以
while($row = mysql_fetch_assoc($res)){
echo $row[''cid''].''::''.$row[1].”;
} //$row[1]这样是取不到值的
补充一点:
mysql_fetch_array函数是这样定义的:array mysql_fetch_array ( resource result [, int result_type]),返回根据从结果集取得的行生成的数组,如果没有更多行则返回 FALSE。
mysql_fetch_array() 中可选的第二个参数 result_type 是一个常量,可以接受以下值:MYSQL_ASSOC,MYSQL_NUM 和 MYSQL_BOTH。其中:
1、mysql_fetch_assoc($result)==mysql_fetch_array($result,MYSQL_ASSOC);
2、mysql_fetch_row($result)==mysql_fetch_array($result,MYSQL_NUM);
所以mysql_fetch_array()函数在某种程度上可以算是mysql_fetch_row()与 mysql_fetch_assoc()的集合。另外,mysql_fetch_array()另外还有MYSQL_BOTH参数,将得到一个同时包含关 联和数字索引的数组。
在来说句 $row = $db->fetch_array($query);
$db是人数据库操作类,$db->fetch_array($query),fetch_array($query)是那个db类里的方法,$row = $db->fetch_array($query)这句的意思是从记录集$query中得到数据库中的一行记录。
不用类可这样实现
复制代码 代码如下:
$c
@mysql_select_db($database,$conn);
$query=mysql_query($sql);
while($row=mysql_fetch_array($query)){
$rows[]=$row;
}
以上就介绍了array_slice mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别,包括了array_slice方面的内容,希望对PHP教程有兴趣的朋友有所帮助。
mysql_fetch_array vs mysql_fetch_assoc vs mysql_fetch_object?
这些 mysql_* 函数已弃用,并且可以使用其他函数来提供更好的安全性和功能。
注意:作为替代方案,可以使用 _assoc 或 _row。
mysql_fetch_assoc
该函数返回与所获取的行相对应的字符串关联数组,如果没有更多行,则返回 FALSE。关联性数组告诉我们键值对,而键告诉我们任何列名称,值告诉我们行值。
这里我们可以将列名映射为键,将值映射为行。例如。
Key is ID and value is corresponding name.
mysql_fetch_array
>这个函数名称表明它返回一个数组。它将结果行作为关联数组、数值数组或两者来获取。它的键既有数字值,也有字符串值。
mysql_fetch_object
此函数将行作为对象返回,并且不返回数组。
以上就是mysql_fetch_array vs mysql_fetch_assoc vs mysql_fetch_object?的详细内容,更多请关注php中文网其它相关文章!
mysql_fetch_array 与 mysql_fetch_object函数与用法
总结:mysql_fetch_object 把记录作来一个对象来处理,像我们用类时就要用->访问,mysql_fetch_array 把记录保存到一个数据所以可以用$rs[''下标名''] 或$rs[0]数组编号.
PHP实例代码如下:
$conn=mysql_connect("127.0.0.1","root","root"); mysql_select_db("ip"); $sql="select * from adminblog "; $result=mysql_query($sql,$conn); while($rs=mysql_fetch_array($result)) { echo $rs->username; echo $rs->password; } //运行代码提示Notice: Trying to get property of non-object 好了,我们现在修改一下 while($rs=mysql_fetch_array($result)) { echo $rs['username']; echo $rs['password']; } //输出结果: adsense 5498bef14143cd98627fb0560cb5ded6 //现在来看一个mysql_fetch_object的实例 while($rs=mysql_fetch_object($result)) { echo $rs['username']; } //运行后出来 Fatal error: Cannot use object of type stdClass as array in 说这不是一个数组 while($rs=mysql_fetch_object($result)) { echo $rs->username; //开源代码phprm.com } //输出结果为 adsense
教程链接:
随意转载~但请保留教程地址★
关于mysql_fetch_array跳过第一行和mysql slave 跳过的介绍现已完结,谢谢您的耐心阅读,如果想了解更多关于2019-07-24 PHP中mysql_fetch_assoc 和 mysql_fetch_array 有什么区别?、array_slice mysql_fetch_row,mysql_fetch_array,mysql_fetch_assoc的区别、mysql_fetch_array vs mysql_fetch_assoc vs mysql_fetch_object?、mysql_fetch_array 与 mysql_fetch_object函数与用法的相关知识,请在本站寻找。
本文标签: