>  기사  >  백엔드 개발  >  PHP에서 쿼리 데이터 세트를 반환하는 방법

PHP에서 쿼리 데이터 세트를 반환하는 방법

coldplay.xixi
coldplay.xixi원래의
2020-11-13 13:41:084319검색

PHP에서 쿼리 데이터 세트를 반환하는 방법: 1. [mysql_result()] 함수를 사용하여 쿼리합니다. 2. [mysql_fetch_row()] 함수를 사용하여 쿼리합니다. .

PHP에서 쿼리 데이터 세트를 반환하는 방법

PHP에 설정된 쿼리 데이터를 반환하는 방법:

1. mysql_result(): 장점은 사용하기 쉽다는 것입니다. 함수는 한 번의 호출로만 결과를 얻을 수 있습니다. 대규모 데이터베이스 자습서에서는 데이터 세트의 요소 행이 덜 효율적입니다. mysql_result():优点在于使用方便;其缺点在于功能少,一次调用只能获取结果数据集中的一行元素,对较大型的数据库教程效率较低;

mysql_result() 函数返回结果集中一个字段的值,如果成功,则该函数返回字段值,如果失败,则返回 false。

语法:mysql_result(data,row,field) 

参数:data 必需,规定要使用的结果标识符,该标识符是 mysql_query() 函数返回的。 

参数:row 必需,规定行号,行号从 0 开始。 

参数:field 可选,规定获取哪个字段,可以是字段偏移值,字段名或 table.fieldname,如果该参数未规定,则该函数从指定的行获取第一个字段。

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con) {
    die(&#39;could not connect: &#39; . mysql_error());
}
$db_selected = mysql_select_db("test_db", $con);
$sql = "select * from person";
$result = mysql_query($sql, $con);
echo mysql_result($result, 0);
mysql_close($con);
?>

2、mysql_fetch_row():优点在于执行效率在4种方法中最高;不足在于只能用数字作为属性索引来获得属性值,在使用时非常容易出现混淆;

mysql_fetch_row() 函数从结果集中取得一行作为数字数组。

语法:mysql_fetch_row(data)

参数:data 必需,要使用的数据指针,该数据指针是从 mysql_query() 返回的结果。

说明:mysql_fetch_row() 从和结果标识 data 关联的结果集中取得一行数据并作为数组返回,每个结果的列储存在一个数组的单元中,偏移量从 0 开始。

依次调用 mysql_fetch_row() 将返回结果集中的下一行,如果没有更多行则返回 false。

返回值:返回根据所取得的行生成的数组,如果没有更多行则返回 false,例子如下:

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con) {
    die(&#39;could not connect: &#39; . mysql_error());
}
$db_selected = mysql_select_db("test_db", $con);
$sql = "select * from person where lastname=&#39;adams&#39;";
$result = mysql_query($sql, $con);
print_r(mysql_fetch_row($result));
mysql_close($con);
?>

输出:

array 
( 
[0] => adams 
[1] => john 
[2] => london 
)

3、mysql_fetch_array():执行效率同样高,同mysql_fetch_row()相差无几,并且可以用属性名方式直接获得属性值,因此在实际应用中最常用;

定义和用法

mysql_fetch_array() 函数从结果集中取得一行作为关联数组,或数字数组,或二者兼有,返回根据从结果集取得的行生成的数组,如果没有更多行则返回 false。

语法:mysql_fetch_array(data,array_type)

参数:data 可选,规定规定要使用的数据指针,该数据指针是 mysql_query() 函数产生的结果。 

array_type 可选,规定返回哪种结果,可能的值:

  • mysql_assoc - 关联数组

  • mysql_num - 数字数组

  • mysql_both - 默认,同时产生关联和数字数组

提示和注释

注释:mysql_fetch_array() 是 mysql_fetch_row() 的扩展版本。除了将数据以数字索引方式储存在数组中之外,还可以将数据作为关联索引储存,用字段名作为键名。

提示:有很重要的一点必须指出,用 mysql_fetch_array() 并不明显比用 mysql_fetch_row() 慢,而且还明显提供了更多的值。

注释:本函数返回的字段名是区分大小写的,例子:

<?php
$con = mysql_connect("localhost", "hello", "321");
if (!$con) {
    die(&#39;could not connect: &#39; . mysql_error());
}
$db_selected = mysql_select_db("test_db", $con);
$sql = "select * from person where lastname=&#39;adams&#39;";
$result = mysql_query($sql, $con);
print_r(mysql_fetch_array($result));
mysql_close($con);
?>
//输出类似: 
array 
( 
[0] => adams 
[lastname] => adams 
[1] => john 
[firstname] => john 
[2] => london 
[city] => london 
)

mysql_fetch_object():采用了面向对象思想,在设计思路上更为先进,如果习惯于用面向对象的思路来写程序,则会很自地选择它,其次,该方法的优点还体现在,对于结构较为负责的数据结果,在逻辑上更为清晰。

4、mysql_fetch_object() 函数从结果集(记录集)中取得一行作为对象。

若成功的话,本函数从 mysql_query() 获得一行,并返回一个对象,如果失败或没有更多的行,则返回 false。

语法:mysql_fetch_object(data)

mysql_result() 함수는 결과 세트의 필드 값을 반환합니다. 필드 값을 반환합니다. 실패하면 false를 반환합니다.

구문: ​​mysql_result(data, row,field)

매개변수: data는 필수이며 mysql_query() 함수에 의해 반환되는 사용할 결과 식별자를 지정합니다.

매개변수: 행이 필수이며 행 번호를 지정하며 행 번호는 0부터 시작합니다.

매개변수: field는 선택사항이며, 필드 오프셋 값, 필드 이름 또는 table.fieldname일 수 있는 필드를 지정합니다. 이 매개변수가 지정되지 않은 경우 함수는 지정된 행에서 첫 번째 필드를 가져옵니다.

<?php
$con = mysql_connect("localhost", "peter", "abc123");
if (!$con) {
    die(&#39;could not connect: &#39; . mysql_error());
}
$db_selected = mysql_select_db("test_db", $con);
$sql = "select * from person";
$result = mysql_query($sql, $con);
while ($row = mysql_fetch_object($result)) {
    echo $row->firstname . "<br />";
}
mysql_close($con);
?>

2. mysql_fetch_row(): 네 가지 방법 중 실행 효율성이 가장 높다는 장점이 있지만, 속성 값을 얻기 위한 속성 인덱스로 숫자만 사용할 수 있다는 점이 단점입니다.
mysql_fetch_row() 함수는 결과 집합에서 숫자 배열로 행을 가져오는 경우 혼동을 일으키기 매우 쉽습니다.

구문: ​​mysql_fetch_row(data)🎜🎜매개변수: 필요한 데이터, 사용할 데이터 포인터, mysql_query()에서 반환된 결과입니다. 🎜🎜설명: mysql_fetch_row()는 결과 식별자 데이터와 연결된 결과 집합에서 데이터 행을 가져와서 배열로 반환합니다. 각 결과 열은 배열 단위로 저장되며 오프셋은 0부터 시작됩니다. 🎜🎜mysql_fetch_row()를 순서대로 호출하면 결과 집합의 다음 행이 반환되고, 더 이상 행이 없으면 false가 반환됩니다. 🎜🎜반환 값: 더 이상 행이 없으면 false를 반환합니다. 🎜
john,george,thomas
🎜출력: 🎜rrreee🎜🎜3. code>: 실행 효율성은 mysql_fetch_row()와 거의 동일하며 속성 이름을 사용하여 속성 값을 직접 얻을 수 있으므로 실제 응용 프로그램에서 가장 일반적으로 사용됩니다. 🎜🎜🎜정의 및 사용법🎜🎜; mysql_fetch_array() 함수는 결과 집합에서 연관 배열, 숫자 배열 또는 둘 다로 행을 가져오고 결과 집합에서 가져온 행을 기반으로 배열을 반환하거나 더 이상 행이 없으면 false를 반환합니다. 🎜🎜구문: ​​mysql_fetch_array(data,array_type)🎜🎜매개변수: data는 선택 사항이며 mysql_query() 함수의 결과인 사용할 데이터 포인터를 지정합니다. 🎜🎜array_type 선택 사항, 반환되는 결과 종류, 가능한 값 지정: 🎜
  • 🎜mysql_assoc - 연관 배열🎜
  • 🎜mysql_num - 숫자 배열 🎜
  • 🎜mysql_both - 기본적으로 연관 배열과 숫자 배열이 모두 생성됩니다 🎜
🎜팁 및 메모 🎜🎜참고: mysql_fetch_array()는 mysql_fetch_row의 확장 버전입니다. (). 데이터를 숫자 인덱스로 배열에 저장하는 것 외에도 필드 이름을 키로 사용하여 데이터를 연관 인덱스로 저장할 수도 있습니다. 🎜🎜팁: mysql_fetch_array()를 사용하는 것이 mysql_fetch_row()를 사용하는 것보다 크게 느리지 않으며 훨씬 더 많은 값을 제공한다는 점을 지적하는 것이 중요합니다. 🎜🎜참고: 이 함수에서 반환되는 필드 이름은 대/소문자를 구분합니다. 예: 🎜rrreee🎜mysql_fetch_object(): 객체 지향적 사고를 채택하고 객체 지향으로 프로그램을 작성하는 데 익숙한 경우 더욱 발전된 디자인 아이디어입니다. 아이디어, 자유롭게 선택할 수 있습니다. 둘째, 이 방법의 장점은 보다 책임감 있는 구조의 데이터 결과가 논리적으로 더 명확하다는 점에도 반영됩니다. 🎜🎜🎜4. mysql_fetch_object() 함수는 결과 세트(레코드 세트)에서 행을 객체로 가져옵니다. 🎜🎜🎜성공하면 이 함수는 mysql_query()에서 행을 가져와서 객체를 반환합니다. 실패하거나 더 이상 행이 없으면 false를 반환합니다. 🎜🎜구문: ​​mysql_fetch_object(data)🎜🎜매개변수: 필요한 데이터, 사용할 데이터 포인터, mysql_query()에서 반환된 결과입니다. 🎜🎜팁 및 참고 사항🎜🎜참고: mysql_fetch_object()에 대한 각 후속 호출은 레코드 세트의 다음 행을 반환합니다. 🎜🎜참고: mysql_fetch_object()는 mysql_fetch_array()와 유사하지만 한 가지 차이점이 있습니다. 배열 대신 객체를 간접적으로 반환합니다. 즉, 배열은 오프셋이 아닌 필드 이름을 통해서만 액세스할 수 있습니다. 예: 🎜rrreee 🎜출력:🎜rrreee🎜🎜관련 무료 학습 권장 사항: 🎜php 프로그래밍🎜(비디오)🎜🎜🎜

위 내용은 PHP에서 쿼리 데이터 세트를 반환하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.