Arrays 从wordpress中的数组创建多维数组
我希望填充$list,而不是该示例数据,而是为每个id使用带有自定义字段值的数组。像这样:Arrays 从wordpress中的数组创建多维数组,arrays,wordpress,Arrays,Wordpress,我希望填充$list,而不是该示例数据,而是为每个id使用带有自定义字段值的数组。像这样: foreach($idArr as $ID) array('.'get_post_meta($ID, 'name', true)'.'), array('.'get_post_meta($ID, 'email', true)'.') //and so on ... } $idArr包含post ID print_r($idArr); Array ( [0] => 242 [1] =&
foreach($idArr as $ID)
array('.'get_post_meta($ID, 'name', true)'.'),
array('.'get_post_meta($ID, 'email', true)'.')
//and so on ...
}
$idArr包含post ID
print_r($idArr);
Array ( [0] => 242 [1] => 241 )
$list = array (
array('aaa', 'bbb', 'ccc', 'dddd'),
array('123', '456', '789'),
array('"aaa"', '"bbb"')
);
如果我正确解释了您的问题,您可以使用get\u post\u custom 通过这样做,您将得到的结构是
$list = array(
0 => array(
'key1' => array( [0] => 'value' ),
'key2' => array( [0] => 'value2' ),
)
);
问题是,每个自定义字段都可以有多个值,因此可以返回一个数组而不是字符串。它相当于get\u post\u meta$post\u id,'key',false;。调整代码以使用此格式
或者,如果您正在查找特定字段,您可以尝试:
$list = array();
foreach ( $idArr as $ID ) {
$fields = get_post_custom( $ID );
$values = array();
// Select only the values you need and add them to the array. REPEAT as needed.
if ( ! empty( $fields['email'][0] ) {
$values[] = $fields['email'][0];
}
$list[] = $values;
}
上面的方法解决了我的第一个示例中的问题,即为什么每个字段都是数组而不是字符串
我可能还想给每个数组值一个键。例如,$list[]变成$list[$ID]..我需要将它们保存到csv文件中。PHP有内置函数来完成此操作。是的。。。但这是我需要写入csv文件的信息。我很高兴帮助您解决您编写的一些代码的问题,但是我无法为您编写所有代码。明白了。你的选择适合我。现在如何打开“保存文件”窗口并将csv保存到我的计算机?
$list = array();
foreach ( $idArr as $ID ) {
$fields = get_post_custom( $ID );
$values = array();
// Select only the values you need and add them to the array. REPEAT as needed.
if ( ! empty( $fields['email'][0] ) {
$values[] = $fields['email'][0];
}
$list[] = $values;
}