워드프레스 사용시, WP에 캡슐화된 데이터베이스 연산 클래스(wp-db.php)를 직접 사용하고 싶다면, 사용하는 코드에 wp-blog-header.php를 포함시키면 됩니다.
define(‘PATH’, dirname(dirname(__FILE__)).‘/’); require_once(PATH . ‘../wp-blog-header.php’); global $wpdb;
데이터를 삽입할 때 wp-db 클래스의 insert() 함수를 사용하는 방법도 있습니다.
$table = "test_table"; $data_array = array( ‘column_1′ => ‘data1′, ‘column_2′ => ‘data2′ ); $wpdb->insert($table,$data_array);
첫 번째 매개변수는 데이터베이스 테이블의 이름이고, 두 번째 매개변수는 삽입할 데이터인 배열입니다. 배열의 키 이름은 테이블의 열 이름입니다. 실제로 insert() 함수에는 세 번째 매개변수 형식도 있습니다. 관심 있는 친구들은 wp-db.php의 메소드 정의에서 데이터를 업데이트할 때 update() 함수를 사용할 수 있음을 볼 수 있습니다. 예:
$table = "test_table"; $data_array = array( ‘column_1′ => ‘new_data1′ ); $where_clause = array(
‘column_2′ => ‘data2′ ); $wpdb->update($table,$data_array,$where_clause);
데이터베이스에서 데이터를 가져오는 방법은 여러 가지가 있으며 그 중 하나는 다음과 같습니다.
$querystr = "SELECT column_1 FROM test_table"; $results = $wpdb->get_results($querystr); $i=0; while ($i< count($results)){ echo $results[$i]->column_1."<br />"; $i++; }
PHP 구문 쿼리
<strong><?php $wpdb->query("DELETE FROM $wpdb->post WHERE post_id = ’13′ “); ?> </strong>
매개변수 쿼리는 mysql 문입니다. 반환 값은 선택되고 영향을 받은 행 수입니다. 오류가 발생하면 FALSE를 반환합니다.
변수를 선택하세요.
<strong><?php $wpdb->get_var('query',column_offset,row_offset); ?> </strong>
여기서 query는 쿼리할 mysql 문입니다. 비어 있으면 캐시에서 선택한다는 의미입니다. column_Offset과 row_offet은 쿼리 반환값의 열과 행을 나타내며, 기본값은 0이다. 일반적인 사용법은 다음과 같습니다.
<?php $user_count = $wpdb->get_var($wpdb->prepare("SELECT COUNT(*) FROM $wpdb->users;"));?>
이 SQL은 하나의 값만 선택하며 기본값은 행 0개와 열 0개입니다. 이는 사용자 수가 선택된다는 의미입니다. 왜 prepare가 항상 여기 앞에 추가되는지는 확실하지 않습니다.
행 선택
<strong><?php $wpdb->get_row('query', output_type, row_offset); ?> </strong>
query는 실행할 mysql 문이고, output_type은 반환 값이 객체인지, 해시인지 또는 배열인지를 나타냅니다. row_offset은 행을 나타냅니다. .
기본적으로 output_type은 객체입니다.
$mylink = $wpdb->get_row("SELECT * FROM $wpdb->links WHERE link_id = 10");
echo $mylink->link_id // 인쇄 "10"
output_type=ARRAY_A인 경우:
$mylink = $wpdb->get_row("SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_A); echo $mylink['link_id']; // prints "10"
열 선택
get_col('query',column_offset) ? >
일반 선택
//$wpdb->get_results('query', output_type); <?php $fivesdrafts = $wpdb->get_results("SELECT ID, post_title FROM $wpdb->posts WHERE post_status = 'draft' AND post_author = 5"); foreach ($fivesdrafts as $fivesdraft) { echo $fivesdraft->post_title; }
행 삽입
<strong>//<?php $wpdb->insert( $table, $data, $format ); ?> <?php $wpdb->insert('table', array('column1' => 'value1', 'column2' => 123 ), array('%s','%d') ) ?></strong>
업데이트
//$wpdb->update( $table, $data, $where, $format = null, $where_format = null ); <?php $wpdb->update( 'table', array( 'column1' => 'value1', 'column2' => 'value2' ), array( 'ID' => 1 ), array( '%s', '%d' ), array( '%d' ) ) ?>
wpdb prepare에 대하여
앞서 언급했듯이 각 mysql 문이 prepare에 포함되는 이유는 명확하지 않습니다. 설명은 다음과 같습니다. mysql 문을 전송하면 작은따옴표, 큰따옴표 등의 문자가 포함될 수 있기 때문입니다. mysql에 처리하지 않고 직접 오류가 발생할 수 있습니다. 그래서 여기에서는 준비를 사용하여 mysql 문을 전처리합니다. prepare 구문은 다음과 같습니다.
$sql = $wpdb->prepare( 'query' [, value_parameter, value_parameter ... ] );
쿼리에는 각각 다음 매개변수의 유형이 정수임을 나타내는 %d, %S 및 %f가 포함될 수 있습니다. , 문자 및 부동 소수점. % 기호를 표시하려면 %%를 사용하십시오. 구문은 기본적으로 C 언어의 printf와 동일합니다.
기본적으로는 그렇습니다. 일반 데이터베이스 처리에는 문제가 없어야 합니다. 문제가 발생하면 이 글의 시작 부분에 언급된 글에서 확인하실 수 있습니다.
$wpdb는 여러 데이터베이스 쿼리 기능을 포함하는 전역 변수입니다:
$wpdb -> get_results('query'); $wpdb->query('query'); $wpdb->get_var('query',column_offset,row_offset); $wpdb->get_row('query', output_type, row_offset); $wpdb->get_col('query',column_offset); $wpdb->get_results('query', output_type); $wpdb->insert( $table, $data, $format ); $wpdb->update( $table, $data, $where, $format = null, $where_format = null ); $wpdb->prepare( 'query' [, value_parameter, value_parameter ... ] ); $wpdb->show_errors(); $wpdb->hide_errors(); $wpdb->print_error(); $wpdb->get_col_info('type', offset); $wpdb->flush();
자세히: http://codex.wordpress org/zh. -cn:Class_Reference/wpdb
위는 WordPress 데이터베이스 작업에 사용되는 기능을 소개합니다. , 관련 내용을 포함하여 PHP 튜토리얼에 관심이 있는 친구들에게 도움이 되기를 바랍니다.