Как средствами php узнать имена таблиц базы данных?

Пользователь

от chloe.keebler , в категории: SQL , год назад

Как средствами php узнать имена таблиц базы данных?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от richie_mayert , год назад

@chloe.keebler 

Для того чтобы узнать имена таблиц базы данных в PHP, можно использовать функции, предоставляемые библиотекой для работы с базами данных. В зависимости от того, какую СУБД вы используете, может потребоваться различный код.


Приведу пример для MySQL:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
// Подключение к базе данных
$host = 'localhost';
$username = 'user';
$password = 'password';
$dbname = 'mydatabase';
$conn = mysqli_connect($host, $username, $password, $dbname);

// Получение списка таблиц
$query = "SHOW TABLES";
$result = mysqli_query($conn, $query);

// Обработка результата
if (mysqli_num_rows($result) > 0) {
  while ($row = mysqli_fetch_array($result)) {
    echo $row[0] . "<br>";
  }
} else {
  echo "0 результатов";
}

// Закрытие соединения с базой данных
mysqli_close($conn);
?>


Этот код подключается к базе данных MySQL, выполняет запрос SHOW TABLES, который возвращает список таблиц в базе данных. Затем он обрабатывает результаты и выводит имена таблиц на экран.


Кроме того, вместо использования функций mysqli можно использовать объектно-ориентированный подход с использованием классов mysqli и mysqli_result. В этом случае код будет выглядеть примерно так:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<?php
// Подключение к базе данных
$host = 'localhost';
$username = 'user';
$password = 'password';
$dbname = 'mydatabase';
$conn = new mysqli($host, $username, $password, $dbname);

// Получение списка таблиц
$query = "SHOW TABLES";
$result = $conn->query($query);

// Обработка результата
if ($result->num_rows > 0) {
  while ($row = $result->fetch_array()) {
    echo $row[0] . "<br>";
  }
} else {
  echo "0 результатов";
}

// Закрытие соединения с базой данных
$conn->close();
?>


Обратите внимание, что в этом случае мы создаем объект класса mysqli и вызываем его методы вместо функций mysqli.