我正在尝试将数组结构生成为编码样式,以便可以将其用于进一步开发,为此我使用了以下内容:
function convertArray($string)
{
$finalString = var_export($string, true);
return stripslashes($finalString);
}
它工作得很好,但问题是它将额外的引号添加到值的开头和结尾我如何删除这些引号。
示例生成的字符串如下:
array (
'foo' => 'array('foo','bar','baz')',
'bar' => 'array('foo','bar')',
'baz' => 'array('foo','bar')',
);
我需要的字符串是:
array (
'foo' => array('foo','bar','baz'),
'bar' => array('foo','bar'),
'baz' => array('foo','bar'),
);
更新
这是我创建数组的方式:
foreach( $attributes as $attrib )
{
if( $attrib->primary_key == '1' )
$column[$attrib->name] = array("'$attrib->type'", "'$attrib->max_length'", '\'pk\'');
else
$column[$attrib->name] = array("'$attrib->type'", "'$attrib->max_length'");
$string[$attrib->name] = 'array('.implode(',', $column[$attrib->name]).')';
}
从这个循环处理后,最终数组发送到上述函数以将其转换为我想要的形式/