2012-11-16 37 views
0

假设有需要被一个数据库(MySQL的)内保存的多个数据实体,例如字体大小字体重量颜色等,其中的一些具有固定值等是串由应用程序的用户输入,因此它们可以保持任何字符。 所有这些信息需要连接并存储为单个长字符串。将数据实体连接成字符串的最佳分隔符是什么?

什么是在这些实体之间使用的最佳分隔符(假设一个小字符串),以避免在用户输入的文本中找到该分隔符的情况?

顺便说一句:我不能为每个单独的实体创建多个列。

+3

最好的隔板将它们放入单独的列;-) – dasblinkenlight

+0

这是不可能的,我害怕。我应该从一开始就指定它,对不起。 –

+0

听起来像你存储的CSS?使用字符或字符序列,这是不合法的css –

回答

2

也许使用像json这样的数据结构语言?

<?php 
// Array of strings 
$strings = array('string1', 'string2', 'string3'); 

// Encode in json (return string) 
$json = json_encode($strings); 

// Add to your database 
funcThatUpdateYourDatabase($json); 

后:

<?php 
// Retrieve json from database; 
$json = funcThatRetrieveYourColumn($json); 

// convert back in array 
$strings = json_decode($json); 
+0

有趣的想法。然后我可以使用什么PHP函数将信息分解为各自的实体? –

+0

php中的Json非常简单。 json_encode(array('string1','string2','string3'));并在json_decode($ json_string)之后; 你也可以使用assoc数组。 但是,如果您计划将类对象搜索存储在序列化程序中。 – Kakawait

0

正如您的要求听起来很奇怪,只需使用一串标点符号(如/ *^$%{]来分隔值。这不太可能偶然发生。显然,弦越长,使用它就越安全。

相关问题