Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在PHP中将MySQL数据库中的字段存储为字符串?_Php_Mysql - Fatal编程技术网

如何在PHP中将MySQL数据库中的字段存储为字符串?

如何在PHP中将MySQL数据库中的字段存储为字符串?,php,mysql,Php,Mysql,数据库中的一个字段是一个数组,该数组已使用infrade()函数转换为字符串 当用户输入的值等于字段名的值时,如何从数据库检索此字段(课程)的内容并将其存储到字符串中 提前感谢您提供的任何帮助。给您: $r = mysql_query('SELECT LESSONS FROM TABLE WHERE NAME=\'user_string\''); $rows = mysql_fetch_assoc($r); echo $rows['LESSONS']; 我不知道我是否理解你的问题,但是。。。查

数据库中的一个字段是一个数组,该数组已使用
infrade()
函数转换为字符串

当用户输入的值等于字段名的值时,如何从数据库检索此字段(
课程
)的内容并将其存储到字符串中

提前感谢您提供的任何帮助。

给您:

$r = mysql_query('SELECT LESSONS FROM TABLE WHERE NAME=\'user_string\'');
$rows = mysql_fetch_assoc($r);
echo $rows['LESSONS'];

我不知道我是否理解你的问题,但是。。。查看一下

如果使用内爆函数将数组转换为字符串,则此数据已丢失有关数组键的任何信息

如果要将数据转换回,请使用explode函数:

$array = explode(',', $columnData);
但是,因此不能在数据库中搜索数组键

其次,MySQL数据库(我假设您使用的是MySQL)无论如何都不能搜索数组键

您需要以其他方式将数据存储到mysql中,以便稍后在SQL中搜索数据

例如,可以创建一个表,该表使用分组索引存储键/值组合

但是,MySQL有一些字符串函数,可以帮助您在MySQL数据库中搜索(现在)字符串数据

搜索值时,在比较之前,在字符串的开头和结尾分别添加一个逗号。有一个MySQL字符串函数可以连接字符串。然后在该表达式中搜索值,并在前后添加逗号

然后可以在mysql数据库中查找单个数组元素


这只是一个快速的解决方案,在大型数据库上性能不佳。但是,如果不更改数据库结构,它可能会解决您的问题。

我不理解-1,因为这似乎是问题的正确答案。不需要有关索引键的信息,我计划使用explode()函数将从数据库返回的字符串转换为数组。以前数组上的键只是一个简单的基于0的数组。能否添加一些详细信息?你已经做了什么?什么代码不起作用?