PHP 7 원생 MySQL 데이터베이스 조작 실현 코드

php 7 에서 my sql 의 연결 과 사용 은 PHP 5 와 크게 다 릅 니 다.
PHP 5 에서 mysqlconnect()등 함 수 는 대부분 PHP 7 의 구성원 함수 로 대 체 됩 니 다.PHP 5 에서 my sql 을 연결 하 는 것 은 과정 적 인 것 이 고,PHP 7 에 서 는 클래스 의 사용 과 대상 을 대상 으로 하 는 방법 을 강조 합 니 다.

$user = new mysqli();

//Connect to mysql
$user->connect("localhost", "root", "q721@Ms67", "Student");
my sql 연결 은 my sql 클래스 로 대 체 됩 니 다.

//Search in mysql
$query = 'SELECT * FROM users';
//Use a variable to save result
$result = $user->query($query);
검색 어도 클래스 의 구성원 함수 로 바 뀌 었 다.
MySQL 서버 에 연결
mysqli_connect(host, username, password [,dbname] [,port]);
-인자:
host:MySQL 서버.포트 번 호 를 포함 할 수 있 습 니 다.기본 값 은"localhost:3306"입 니 다.
username:사용자 이름.기본 값 은 서버 프로 세 스 소유자 의 사용자 이름 입 니 다.
password:비밀번호.
dbname:데이터베이스 이름.
port:MySQL 서버 의 포트 번 호 는 기본적으로 3306 입 니 다.
-반환 값:연결 이 성공 하면 my sql 연결 대상 을 되 돌려 줍 니 다.실패 하면 false 로 돌아 갑 니 다.
인 스 턴 스 코드 1

<?php
 $mysqli = new mysqli("localhost", "root", "password", "testgame");
 if(!$mysqli) {
  echo"database error";
 }else{
  echo"php env successful";
 }
 $mysqli->close();
?>
localhost 는 로 컬 호스트 라 는 뜻 입 니 다.만약 당신 이 자신의 컴퓨터 에 있다 면 이 항목 은 고 칠 필요 가 없습니다.
루트 는 my sql 사용자 이름 입 니 다.기본 값 으로 수정 되 지 않 았 다 면 상관 하지 않 고 복사 하 십시오.
password 라 는 my sql 비밀 번 호 를 사용 해 보지 않 았 다 면 빈 것 으로 쓰 면 됩 니 다."그 렇 군요."
부호 2

<?php
/* Connect to a MySQL server          */
$link = mysqli_connect(
'localhost', /* The host to connect to   MySQL   */
'root', /* The user to connect as   MySQL    */
'root', /* The password to use   MySQL   */
'lucax_database'); /* The default database to query        */

if (!$link) {
printf("Can't connect to MySQL Server. Errorcode: %s ", mysqli_connect_error());
exit;
}else
echo '       !';

/* Close the connection     */
mysqli_close($link);
?>
코드 3

<?php
$servername = "localhost";
$username = "root";
$password = "root";

$dbname = "myDB";

//     

# Tip:          (   3306),            , : new mysqli("localhost", "username", "password", "", port)
$conn = new mysqli($servername, $username, $password,$dbname);

//     
if ($conn->connect_error) {
die("    : " . $conn->connect_error);
}
echo "    ";

$conn->close();
?>
현재 데이터베이스 선택
mysqli_select_db(mysqliLink, database)
-설명:하나의 데이터베이스 서버 에 많은 데이터 베 이 스 를 포함 할 수 있 으 며,일반적으로 특정한 데이터 베 이 스 를 대상 으로 프로 그래 밍 을 해 야 한다.
-반환 값:TRUE 에 성공 하면 FALSE 로 돌아 갑 니 다
클 라 이언 트 문자 집합 설정
mysqli_set_charset(mysqliLink, charset)
-설명:기본 문자 인 코딩 설정
-복귀:성공 시 TRUE 로 돌아 가 거나 실패 시 FALSE 로 돌아 갑 니 다.
MySQL 조회 보 내기
mysqli_query(mysqliLink , queryStr)
-인자:
query 는 검색 문자열 입 니 다.
링크 는 활성 화 된 데이터베이스 연결 입 니 다.
-설명:mysqlquery()는 SELECT,SHOW 또는 DESCRIBE 문구 에 만 my sql 을 되 돌려 줍 니 다.result 결과 집합 대상,조회 실행 이 올 바 르 지 않 으 면 FALSE 로 돌아 갑 니 다.다른 유형의 SQL 문장 에 대해 mysqlquery()는 실행 에 성 공 했 을 때 TRUE 로 돌아 가 고,오류 가 발생 했 을 때 FALSE 로 돌아 갑 니 다.FALSE 가 아 닌 반환 값 은 검색 이 합 법 적 이 고 서버 에서 실 행 될 수 있다 는 것 을 의미한다.
-메모:검색 문자열 은 분점 으로 끝나 지 않 고 명령 행 모드 와 다 릅 니 다.
결과 에서 한 줄 을 집중 적 으로 관련 배열 로 하거나 디지털 배열 또는 두 가 지 를 동시에 가 져 옵 니 다.
mysqli_fetch_array ( mysqliResult [, resultType] )
-매개 변수:resultType 은 상수 이 며,수치:MYSQLIBOTH(둘 다,기본 값),MYSQLIASSOC(관련 색인),MYSQLINUM(숫자 인덱스)
-복귀:결과 집합 에서 가 져 온 줄 에 따라 생 성 된 배열 을 되 돌려 주 고,더 많은 줄 이 없 으 면 FALSE 로 되 돌려 줍 니 다.
-주의:이 함수 가 되 돌아 오 는 필드 이름 은 대소 문 자 를 구분 합 니 다.
결과 에서 모든 줄 을 관련 배열,매 거 진 배열 또는 양자 겸유 로 집중 적 으로 얻 었 다.
mysqli_fetch_all(mysqliResult [, resultType ])
-파라미터:$resulttype 은 상수 입 니 다.수치:MYSQLIBOTH(둘 다,기본 값),MYSQLIASSOC(관련 색인),MYSQLINUM(숫자 인덱스)
-복귀:결과 집합 에서 가 져 온 줄 에 따라 생 성 된 배열 을 되 돌려 주 고,더 많은 줄 이 없 으 면 FALSE 로 되 돌려 줍 니 다.
-주의:이 함수 가 되 돌아 오 는 필드 이름 은 대소 문 자 를 구분 합 니 다.
결과 집중 행 의 수 를 얻다
mysqli_num_rows(mysqliResult)
-메모:이 명령 은 SELECT 문구 에 만 유효 합 니 다.
결과 에서 관련 배열 로 한 줄 을 집중 적 으로 얻 었 다.
array mysqli_fetch_assoc(mysqliResult)
-반환 값:결과 집합 에서 가 져 온 줄 에서 생 성 된 관련 배열 입 니 다.더 많은 줄 이 없 으 면 FALSE 로 돌아 갑 니 다.
-메모:이 함수 가 되 돌아 오 는 필드 이름 의 대소 문자 가 민감 합 니 다.
이전 MySQL 작업 에 영향 을 미 친 기록 줄 수 가 져 오기
mysqli_affected_rows ( mysqliLink )
-설명:최근$link 와 연 결 된 SELECT,INSERT,UPDATE 또는 DELETE 조회 에 영향 을 미 친 기록 줄 수 를 가 져 옵 니 다.
-주의:최근 검색 에 실패 하면 함수 반환-1.UPDATE 조 회 를 사용 하면 MySQL 은 새 값 과 같은 값 을 업데이트 하지 않 습 니 다.반환 값 은 반드시 조회 조건 에 맞 는 기록 이 아니 라 수 정 된 기록 수 만 되 돌아 갑 니 다.
결과 집합 과 연 결 된 메모리 방출
mysqli_free_result(mysqliResult)
-인자:my sql Result 는 결과 집합 대상 입 니 다.
이전 MySQL 연결 에서 발생 한 텍스트 오류 정 보 를 되 돌려 줍 니 다.
mysqli_connect_error()
-인자:인자 없 음
php 7 데이터베이스 만 들 기:
방법 1:

$sql = "CREATE DATABASE myDB3";
if (mysqli_query($conn, $sql)) {
echo "       ";
} else {
echo "Error creating database: " . mysqli_error($conn);
}
방법 2:

//     
if ($conn->connect_error) {
  die("    : " . $conn->connect_error);
}
echo "    ";

$sql = "CREATE DATABASE myDB2";
if ($conn->query($sql) === TRUE) {
  echo "       ";
} else {
  echo "Error creating database: " . $conn->error;
}
표를 만 드 는 방법:
방법 1:

//    sql      
$sql = "CREATE TABLE MyGuests (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";

if (mysqli_query($conn, $sql)) {
echo "    MyGuests     ";
} else {
echo "       : " . mysqli_error($conn);
}
방법 2:

//    sql      
$sql = "CREATE TABLE MyGuests2 (
id INT(6) UNSIGNED AUTO_INCREMENT PRIMARY KEY,
firstname VARCHAR(30) NOT NULL,
lastname VARCHAR(30) NOT NULL,
email VARCHAR(50),
reg_date TIMESTAMP
)";

if ($conn->query($sql) === TRUE) {
echo "Table MyGuests created successfully";
} else {
echo "       : " . $conn->error;
}
데이터 삽입 방법:
방법 1:

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";

if (mysqli_query($conn, $sql)) {
echo "       ";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
방법 2:

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]')";

if ($conn->query($sql) === TRUE) {
echo "       ";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
여러 개의 데 이 터 를 삽입 하 는 방법:
방법 1:

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('John', 'Doe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Mary', 'Moe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('Julie', 'Dooley', '[email protected]')";

if (mysqli_multi_query($conn, $sql)) {
echo "       ";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
방법 2:

$sql = "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('22', 'Doe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('22', 'Moe', '[email protected]');";
$sql .= "INSERT INTO MyGuests (firstname, lastname, email)
VALUES ('22', 'Dooley', '[email protected]')";

if ($conn->multi_query($sql) === TRUE) {
echo "       ";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
데이터 베 이 스 를 조회 하 는 방법:
방법 1:

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = mysqli_query($conn, $sql);

if (mysqli_num_rows($result) > 0) {
//     
while($row = mysqli_fetch_assoc($result)) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0   ";
}
방법 2:

$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn->query($sql);

if ($result->num_rows > 0) {
//     
while($row = $result->fetch_assoc()) {
echo "id: " . $row["id"]. " - Name: " . $row["firstname"]. " " . $row["lastname"]. "<br>";
}
} else {
echo "0   ";
}
여기 보시 면 저희 가 정 리 된 라 이브 러 리 를 하나 더 나 눠 드릴 게 요.

<?php
/** 
*       
*/
!defined('ROOTNAME') && exit('FORBIDDEN');
class db_mysql{
	var $query_num = 0;
	var $link;
	
	function __construct($dbhost, $dbuser, $dbpw, $dbname) {
		$this->connect($dbhost, $dbuser, $dbpw, $dbname);
	}

	function connect($dbhost, $dbuser, $dbpw, $dbname) {
//  global $dbcharset;
  if(!$this->link = @mysqli_connect($dbhost, $dbuser, $dbpw, $dbname)) {
  	$this->halt("Can not connect to MySQL server");
  }
  
		if($this->server_info() > '5.0'){
			mysqli_query($this->link, "SET sql_mode=''");
		}
		/*
		if($dbname) {
			if (!@mysqli_select_db($dbname, $this->link)){
				$this->halt('Cannot use database '.$dbname);
			}
		}*/
	}

	function select_db($dbname) {
		$this->dbname = $dbname;
		if (!@mysqli_select_db($dbname, $this->link)){
			$this->halt('Cannot use database '.$dbname);
		}
	}

	function server_info() {
		return mysqli_get_server_info($this->link);
	}
	
	function version() {
		return mysqli_get_server_info($this->link);
	}
	
	
	function insert($tableName, $column = array()) {
   $columnName = "";
   $columnValue = "";
   foreach ($column as $key => $value) {
    $columnName .= $key . ",";
    $columnValue .= "'" . $value . "',";
   }
   $columnName = substr($columnName, 0, strlen($columnName) - 1);
   $columnValue = substr($columnValue, 0, strlen($columnValue) - 1);
   $sql = "INSERT INTO $tableName($columnName) VALUES($columnValue)";
   $this->query($sql);
  }
	 
	function update($tableName, $column = array(), $where = "") {
   $updateValue = "";
   foreach ($column as $key => $value) {
    $updateValue .= $key . "='" . $value . "',";
   }
   $updateValue = substr($updateValue, 0, strlen($updateValue) - 1);
   $sql = "UPDATE $tableName SET $updateValue";
   $sql .= $where ? " WHERE $where" : null;
   $this->query($sql);
  }
	 function delete($tableName, $where = ""){
   $sql = "DELETE FROM $tableName";
   $sql .= $where ? " WHERE $where" : null;
   $this->query($sql);
  }
	 function select($tableName, $columnName = "*", $where = "") {
   $sql = "SELECT " . $columnName . " FROM " . $tableName;
   $sql .= $where ? " WHERE " . $where : null;
   $this->query($sql);
  }
	 function get_all($sql,$result_type = MYSQLI_ASSOC) {
  $query = $this->query($sql);
  $i = 0;
  $rt = array();
  while($row =& mysqli_fetch_array($query,$result_type)) {
   $rt[$i]=$row;
   $i++;
  }
  //$this->write_log("       ".$sql);
  return $rt;
 }


 function fetchRow($query){
  return mysqli_fetch_assoc($query);
 }
	
	function query($sql) {
  //$this->write_log("   ".$sql);
		mysqli_query($this->link,"set names utf8");
  $query = mysqli_query($this->link,$sql);
  //if(!$query) $this->halt('Query Error: ' . $sql);
  return $query;
 }
	//        
 function getOne($sql, $limited = false){
  if ($limited == true){
   $sql = trim($sql . ' LIMIT 1');
  }

  $res = $this->query($sql);
  if ($res !== false){
   $row = mysqli_fetch_row($res);

   if ($row !== false){
    return $row[0];
   }else{
    return '';
   }
  }else{
   return false;
  }
 }
	
	
	function fetch_array($query, $result_type = MYSQLI_ASSOC) {
  return mysqli_fetch_array($query, $result_type);
 }
	
	//    
	function fetch_first($sql) {
		$res=$this->query($sql);
		return $this->fetch_array($res,MYSQLI_ASSOC);
	}
	
	//         
	function get_one($sql, $result_type = MYSQLI_ASSOC){
		$result = $this->query($sql);
		$record = $this->fetch_array($result, $result_type);
		return $record;
	}

 function getRow($sql, $limited = false){
  if ($limited == true){
   $sql = trim($sql . 'LIMIT 1');
  }

  $res = $this->query($sql);
  if ($res !== false){
   return mysqli_fetch_assoc($res);
  }else{
   return false;
  }
 }

 
 //      
	function affected_rows() {
		return mysqli_affected_rows($this->link);
	}
	//                
	function fetch_row($query) {
		return mysqli_fetch_row($query);
	}
	//     
	function num_rows($query) {
		return mysqli_num_rows($query);
	}
	//       
	function num_fields($query) {
		return mysqli_num_fields($query);
	}
	//       
	function result($query, $row) {
		$query = mysqli_result($query, $row);
		return $query;
	}
	//      
	function free_result($query) {
		return mysqli_free_result($query);
	}
	//    ID 
	function insert_id() {
		return ($id = mysqli_insert_id($this->link)) >= 0 ? $id : $this->result($this->query("SELECT last_insert_id()"), 0);
	}


	function close() {
		return mysqli_close($this->link);
	}

 function error() {
  return (($this->link) ? mysqli_error($this->link) : '');
 }
 //       
 function errno() {
  return intval(($this->link) ? mysqli_errno($this->link) : '');
 }

	function halt($msg = '') {
  global $charset;
		$msg = "<html>
<head>
"; $msg .= "<meta content=\"text/html; charset=$charset\" http-equiv=\"Content-Type\">
"; $msg .= "<style type=\"text/css\">
"; $msg .= "body,p,pre {
"; $msg .= "font:12px Verdana;
"; $msg .= "}
"; $msg .= "</style>
"; $msg .= "</head>
"; $msg .= "<body bgcolor=\"#FFFFFF\" text=\"#000000\" link=\"#006699\" vlink=\"#5493B4\">
"; $msg .= "<b>error</b>: ".htmlspecialchars($this->error())."
<br />"; $msg .= "<b>error number</b>: ".$this->errno()."
<br />"; $msg .= "<b>Date</b>: ".date("Y-m-d @ H:i")."
<br />"; $msg .= "<b>Script File</b>: http://".$_SERVER['HTTP_HOST'].getenv("REQUEST_URI")."
<br />"; $msg .= "</body>
</html>"; echo $msg; exit; } } ?>
 이상 은 PHP 7 원생 MySQL 데이터베이스 조작 실현 코드 에 대한 상세 한 내용 입 니 다.php 7 데이터베이스 조작 방법 에 관 한 자 료 는 다른 관련 글 을 주목 하 십시오!

좋은 웹페이지 즐겨찾기