MySQL作為一個輕量化的數據庫管理系統,實現了在Web應用中存儲數據的必要功能。而對于需要存儲數組類型數據的需求,MySQL也能夠提供支持。
實現方法是采用將數組轉化為Json字符串,然后存儲到MySQL的text類型字段中。例如下面的PHP代碼:
<?php
$myArray = array("name"=>"Tom", "age"=>23, "hobbies"=>array("reading", "sports", "travel"));
$jsonArray = json_encode($myArray); //將數組轉化為Json字符串
$mysqli = new mysqli("localhost", "root", "password", "mydb");
$sql = "INSERT INTO mytable (data) VALUES ('$jsonArray')";
$mysqli->query($sql);
其中,$myArray是需要存儲的數組,通過json_encode()函數將其轉化成字符串$jsonArray。然后將其插入到MySQL表中,存儲在data字段中。
讀取存儲的數組數據則需要通過反序列化Json字符串再將其轉化為數組形式。例如下面的代碼:
<?php
$mysqli = new mysqli("localhost", "root", "password", "mydb");
$sql = "SELECT data FROM mytable WHERE id=1";
$result = $mysqli->query($sql);
$row = $result->fetch_assoc();
$myArray = json_decode($row['data'], true); //反序列化Json字符串并轉化為數組
print_r($myArray); //輸出數組
通過SELECT語句讀取表中存儲的Json字符串$data,然后通過json_decode()函數反序列化Json字符串,再將其轉化為數組形式。輸出時使用print_r()函數即可。