wpdb::get_row() publicWP 0.71

Отримує перший рядок з результату запиту SQL. Повертає рядок як об’єкт.

Використовуйте параметр $row_offset , щоб отримати другий, третій, …, n-й рядок із запиту.

{} Це метод класу: wpdb{}

Працює на основі:
wpdb::query()

Хуків немає.

Повертає

Массив|Объект|null|null.

  • object– При $output_type = OBJECT (за замовчуванням).
  • array– При $output_type = ARRAY_A або ARRAY_N.
  • null– коли не вдалося отримати дані (запитуваних даних немає в бд).

Використання

$wpdb->get_row($query, $output_type, $row_offset);
$query
(рядок)
Запит, який потрібно виконати.
$output_type
(константа)

Одна із трьох констант. Може бути:

  • OBJECT – результат буде повернено як об’єкт (за замовчуванням).
  • ARRAY_A – результат буде повернено як асоціативного масиву.
  • ARRAY_N – результат буде повернуто у вигляді пронумерованого масиву.
    За замовчуванням OBJECT
$row_offset
(число)
Номер рядка результату запиту, що повертається.


За замовчуванням 0 (перший рядок)

Приклади

0

#1 Отримаємо всю інформацію про посилання 10

$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10");

// Тепер, властивості (змінні) $mylink - це назви
//колонок із таблиці $wpdb->links зі значеннями полів таблиці:
echo $mylink->link_id; // виведе на екран "10"
0

#2 З використанням константи:

$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_A );

// результатом буде асоціативний масив
echo $mylink['link_id']; // виведе на екран "10"

або

$mylink = $wpdb->get_row( "SELECT * FROM $wpdb->links WHERE link_id = 10", ARRAY_N );

// результатом буде пронумерований масив
echo $mylink[1]; // Виведе на екран "10"

список змін

З версії 0.71Введено.

Код wpdb::get_row() WP 6.0.2

public function get_row( $query = null, $output = OBJECT, $y = 0 ) {
	$this->func_call = "$db->get_row("$query",$output,$y)";

	if ( $query ) {
		if ( $this->check_current_query && $this->check_safe_collation( $query ) ) {
			$this->check_current_query = false;
		}

		$this->query( $query );
	} else {
		return null;
	}

	if ( ! isset( $this->last_result[ $y ] ) ) {
		return null;
	}

	if ( OBJECT === $output ) {
		return $this->last_result[ $y ] ? $this->last_result[ $y ] : null;
	} elseif ( ARRAY_A === $output ) {
		return $this->last_result[ $y ] ? get_object_vars( $this->last_result[ $y ] ) : null;
	} elseif ( ARRAY_N === $output ) {
		return $this->last_result[ $y ] ? array_values( get_object_vars( $this->last_result[ $y ] ) ) : null;
	} elseif ( OBJECT === strtoupper( $output ) ) {
		// Back compat for OBJECT being previously case-insensitive.
		return $this->last_result[ $y ] ? $this->last_result[ $y ] : null;
	} else {
		$this->print_error( ' $db->get_row(string query, output type, int offset) -- Output type must be one of: OBJECT, ARRAY_A, ARRAY_N' );
	}
}

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *