在PHP变量中存储复杂字符串

时间:2012-06-23 15:24:15

标签: php variables

是否可以在php字符串中存储这样的东西:

$variable = "'orderby'=>'title','order'=>ASC'"

我想在wordpress循环中使用它,但不确定我是否可以将多个参数作为字符串存储在单个变量中。例如,我不希望变量存储多个参数,而是将整个引用的文本存储为字符串。

2 个答案:

答案 0 :(得分:3)

你最好的选择是创建一个数组或对象并将其序列化......:

$variable = array('orderby'=>'title','order'=>'ASC');
$string=serialize($variable);

回答你关于在循环中使用它的问题......

$args=array( 'post_type' => 'films', 'post_parent' => 0, 'posts_per_page' => -1);
$more=unserialize($variable);

$loop = new WP_Query( $args+$more );

Json是一种更快的转换格式,正如其他人试图指出的那样,如果你只是将它用于简单数组,那么它可能是更好的解决方案。 Serialize为Objects提供了一些非常有趣的功能

答案 1 :(得分:0)

使用JSON:

// $json contains {'orderby':'title','order':'ASC'}
$json = json_encode(array('orderby' => 'title', 'order' => 'ASC'));