连接数据库在存储数组前,需要使用php连接到数据库。通过php的mysqli或pdo扩展,可以实现与mysql等数据库的连接。
首先,需要在php中配置数据库连接信息,包括主机地址、用户名、密码和数据库名等;
然后,可以使用mysqli_connect()或pdo的connect()方法,链接到目标数据库。
例如:
//使用mysqli_connect()连接数据库
$servername = localhost;
$username = root;
$password = 123456;
$dbname = test;
$conn = mysqli_connect($servername, $username, $password, $dbname);
if (!$conn) {
die(connection failed: . mysqli_connect_error());
}
//使用pdo连接数据库
$dsn = 'mysql:dbname=test;host=localhost';
$user = 'root';
$password = '123456';
try {
$dbh = new pdo($dsn, $user, $password);
} catch (pdoexception $e) {
echo 'connection failed: ' . $e->getmessage();
}
创建数据表接下来,在目标数据库中,需要先创建存储数组的数据表。可以使用mysql命令行或者可视化工具等方式,创建一个包含需要存储的数据的表。
例如:假设需要存储学生信息数组,包含学生id、姓名和年龄,可以创建以下数据表:
create table students (
id int(10) unsigned not null auto_increment,
name varchar(20) not null default '',
age int(11) not null default '0',
primary key (id)
) engine=innodb default charset=utf8;
存储数组接下来,可以将php数组的数据插入到数据表中。可以使用mysql的insert命令或者php提供的执行插入操作的函数将数组插入到目标数据表中。
例如:将一个包含三个学生信息的数组插入到上面的数据表中,可以使用以下代码:
//一个包含三个学生信息的数组
$students = array(
array('name' => '张三', 'age' => 18),
array('name' => '李四', 'age' => 19),
array('name' => '王五', 'age' => 20)
);
//循环遍历数组,将每个学生信息插入数据表
foreach ($students as $student) {
$name = $student['name'];
$age = $student['age'];
//使用mysqli实现
$sql = insert into students (name, age) values ('$name', $age);
if (mysqli_query($conn, $sql)) {
echo new record created successfully;
} else {
echo error: . $sql . <br> . mysqli_error($conn);
}
//使用pdo实现
$stmt = $dbh->prepare(insert into students (name, age) values (:name, :age));
$stmt->bindparam(':name', $name);
$stmt->bindparam(':age', $age);
$stmt->execute();
}
查询数据存储数组到数据库后,也可以通过mysql命令行或者php代码来查询数据表中的数据。可以使用select命令或者php提供的查询操作函数,实现对数据表的查询。
例如:查询数据表中包含的所有学生信息,可以使用以下代码:
//使用mysqli实现
$sql = select * from students;
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
while($row = mysqli_fetch_assoc($result)) {
echo id: . $row[id]. - name: . $row[name]. - age: . $row[age]. <br>;
}
} else {
echo 0 results;
}
//使用pdo实现
$stmt = $dbh->prepare(select * from students);
$stmt->execute();
$res = $stmt->fetchall();
if (count($res) > 0) {
foreach ($res as $row) {
echo id: . $row['id'] . - name: . $row['name'] . - age: . $row['age'] . <br>;
}
} else {
echo 0 results;
}
总结
在php编程中,将数组存储到数据库中是非常常见的操作,可以通过mysql的insert命令或者php提供的执行插入操作的函数将数组插入到目标数据表中。同时,也可以通过mysql的select命令或者php提供的查询操作函数,实现对数据表的查询。这种方式可以方便地存储和管理数据,并且也是日常工作中不可避免的操作。
以上就是php中如何将数组存入数据库的详细内容。