Empire CMS의 2차 개발에서 fetch()와 fetch1()을 어떻게 사용하나요?
fetch()와 fetch1()은 Empire CMS의 2차 개발에서 흔히 사용되는 함수를 소개합니다. fetch() 및 fetch1() 올바른 작성 방법 및 fetch1()의 일부 용도:
(참고: fetch() 및 fetch1() 함수는 e/class/db_sql.php 파일에 있습니다)
1. fetch()
일반적으로 목록을 반복하거나 여러 정보를 나열합니다. 예를 들어 다음 예에서는 구성원 그룹 ID가 1인 모든 구성원 ID와 사용자 이름을 가져옵니다. SQL문 실행, 즉 query()가 먼저 실행된 후 query()의 실행 결과가 fetch()의 매개변수로 사용됩니다.
코드는 다음과 같습니다.
query( "select userid,username from {$dbtbpre}enewsmember where groupid=1" ); while ( $r = $empire ->fetch( $sql )){ echo $r [userid]. '---' . $r [username].' '; } db_close(); $empire =null;
2.fetch1 ()
간단히 말하면 USERID가 1인 데이터를 가져오는 등의 정보를 쿼리할 때만 사용합니다. fetch()와 차이점은 fetch1()의 매개변수가 실행이 아니라 SQL 문이라는 점입니다. 결과적으로 두 번째로 SQL 문을 사용하지 않고 직접 들어가십시오. fetch1()은 데이터 하나만 가져옵니다.
코드는 다음과 같습니다.
fetch1("select userid,username from {$dbtbpre}enewsmember where userid=1 limit 1"); echo $r[userid].' '; echo $r[username].' '; db_close(); $empire=null;
더 자세히 살펴보겠습니다.
1. 정보를 가져오는 방법은 fetch()와 fetch1()이 모두 가능합니다.
코드는 다음과 같습니다.
fetch1("select id,title from {$dbtbpre}ecms_news where classid=34"); print_r($r1); echo '<hr>'; $sql=$empire->query("select id,title from {$dbtbpre}ecms_news where classid=34"); $r=$empire->fetch($sql); print_r($r); echo '<hr>'; db_close(); $empire=null;
2.fech1()을 사용하여 데이터를 반복하려면, 다음 코드를 테스트해 보세요. 결과는 비극적이며 무한 루프이며 브라우저를 빠르게 닫을 수 있습니다.
코드는 다음과 같습니다.
fetch1("select id,title from {$dbtbpre}ecms_news where classid=34")){ echo $r1[title]; } db_close(); $empire=null;
3.fetch()도 종료되었습니다. 루프 작성 방법;
코드는 다음과 같습니다.
query("select id,title from {$dbtbpre}ecms_news where classid=341"); $r=$empire->fetch($sql); while($r)){ echo $r[title].' '; } db_close(); $empire=null;
4. . . ; Trylife는 코드도 없고 진실도 없다고 말한 적이 있으므로 소스 파일의 내용을 살펴보겠습니다. 위치: e/class/db_sql.php
코드는 다음과 같습니다.
//执行mysql_fetch_array() function fetch($sql)//此方法的参数是$sql就是sql语句执行结果 { $this->r=mysql_fetch_array($sql); return $this->r; } //执行fetch1(mysql_fetch_array()) //此方法与fetch()的区别是:1、此方法的参数是$query就是sql语句 //2、此方法用于while(),for()数据库指针不会自动下移,而fetch()可以自动下移。 function fetch1($query) { $this->sql=$this->query($query); $this->r=mysql_fetch_array($this->sql); return $this->r; }
①. fetch() 라인보다 더 많은 fetch1() 함수 본문이 있습니다. "$this->sql=$this->query($query);"; fetch1()은 정보 행을 가져올 때 query()를 먼저 실행합니다. , fetch1()을 직접 사용하면 됩니다.
② 위의 3과 4의 무한 루프는 PHP 작성 문제입니다. while($r=$empire->fetch($query)) 함수는 먼저 내용을 가져옵니다. 쿼리 결과의 첫 번째 라인, 그리고 레코드 포인터는 자동으로 다음 한 라인으로 이동합니다. 참고: mysql_fetch_array는 while() 대괄호에 기록되지 않은 mysql_fetch_array() 데이터의 첫 번째 행만 가져옵니다. 데이터의 첫 번째 행만 읽으므로 무한 루프입니다!
위 내용은 Imperial CMS의 2차 개발에서 fetch() 및 fetch1()을 사용하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!