0

我目前正试图在我的一张大桌子上伪造种子。我目前正在使用 Laravel 4.1。

例如,我有一列设置为 NULL,因为只有在前一列设置为“1”时才需要填充它。

我目前有:

$alerts = 
[[
    'user_id' => $i,
    'reference' => $faker->sentence($nbWords = 1),
    'type' => rand(1,2),
    'category' => rand(1,4),
    'headline' => $faker->sentence($nbWords = 2),
    'description' => $faker->realText(150)               
]];

所以,如果'type'是 '1',我希望接下来的两个字段 'range_to' 和 'range_from' 被伪造。

这在逻辑上可能吗?任何指针将不胜感激。

4

1 回答 1

1

使用 if 语句拆分进位

$alerts = 
[[
    'user_id' => $i,
    'reference' => $faker->sentence($nbWords = 1),
    'type' => rand(1,2),
    'category' => rand(1,4),
    'headline' => $faker->sentence($nbWords = 2),
    'description' => $faker->realText(150)               
]];

foreach($alerts as $key=>$alert){
    if( $alert['type'] != 1 ){
        $alerts[$key]['category'] = $alerts[$key]['headline'] = $alerts[$key]['description'] = NULL ;
    }
}

因此,您可以根据需要设置警报,然后循环它们并应用所需的条件(如果存在),然后编辑数组。

在上面的示例中,它将循环$alerts并且对于每个数组,如果 ['type'] 不等于 1,它将将该数组的类别、标题和描述设置为 NULL..

于 2014-04-09T19:06:43.293 回答