我如何改变这个wordpress php输出到一个数组?

时间:2010-10-26 18:59:51

标签: php wordpress wordpress-theming

<?php
$parent_cat = 57;
$child_cats = get_categories('child_of='.$parent_cat);
if($child_cats) :
  echo '{ ';
    foreach($child_cats as $cat) {
    echo $sep . $cat->cat_name;
    $sep = ', ';
    }
  echo ' }';
endif;
?>

上面的代码以这种格式输出了许多类别:

A Cut Above,A20Labs,AMCH,

我如何在每个元素周围添加''这样的输出?

'A Cut Above','A20Labs','AMCH',

第二个问题,我将如何对其进行编码,以便输出像这样进入这个数组代码?

<?php $type_array = array('A Cut Above','A20Labs','AMCH',)?>

非常感谢! Azeem

2 个答案:

答案 0 :(得分:2)

关于第一个问题,请将echo $sep . $cat->cat_name;更改为echo $sep . '\''.$cat->cat_name.'\'';

这将更改它以输出名称,并在其周围添加单引号。

要返回数组,请尝试以下方法:

<?php
$parent_cat = 57;
$child_cats = get_categories('child_of='.$parent_cat);
$type_array = array();
if($child_cats) :
    foreach($child_cats as $cat) {
    $type_array[] = $cat->cat_name;
    }
endif;
?>

这会将名称放入一个新数组而不是回显它们。

答案 1 :(得分:0)

你可以用更少的工作来获得你想要的数组:

<?php

$child_cats = get_categories(array(
  'child_of' => $parent_cat,
  'fields' => 'names'
));

?>