我正在尝试在 PHP中练习/学习foreach循环。我了解基本的foreach。但我在多维度上挣扎。
我有一个数组来测试它:
$data = array(
array('New York', 'New York City'),
array('hotel', 'lodging','motel'),
array('cheap')
);
我想做的是循环遍历每一个可能的组合并将其分配给它自己的数组(稍后将显示为列)。
First column ('New York', 'New York City')
second column ('New York hotel', 'New York lodging', 'New York motel')
third column ('New York City hotel', 'New York City lodging', 'New York City motel')
fourth column ('New York hotel cheap', 'New York lodging cheap', 'New York motel cheap')
fifth column ('New York City hotel cheap', 'New York City lodging cheap', 'New York City motel cheap')
我将如何做到这一点?我已经尝试了几件事,但还没有接近。
更新 我的最终目标是让个人能够获取项目列表,并尝试找到所有可能的关键字。然后,这将有助于识别他们可以考虑使用的不同 SEO 关键字。所以有时 Data 数组可能有 2 个子数组,有时它可能有 3 或 4 个。所以它需要有点动态。
第一次解决方案尝试
public function recurseful($start, $args)
{
if (is_array($args))
{
foreach ($args[0] as $value)
{
$this->output[] = trim("{$start} {$value}");
if (count($args) > 1)
{
$this->recurseful($value, array_slice($args, 1));
}
}
}
return;
}
但是,这会在一个数组中返回我的所有单词。这不符合我正在寻找的要求。