【发布时间】:2014-01-14 01:34:22
【问题描述】:
这可能是一个愚蠢的问题:
我正在执行以下操作来设置我转换为 CSV 下载的数组中的标题。 CSV 部分与这个问题无关,因为它工作得很好。
数组标题:
$csv_fields = array();
$csv_fields[0] = array();
$csv_fields[0][] = 'Category';
$csv_fields[0][] = 'Question';
$csv_fields[0][] = 'Case';
$csv_fields[0][] = 'Partner';
// ... etc
现在我想根据脚本的 Posted 复选框设置头部。我打算使用很多 if, else 语句,如下所示:
if ($_POST['category']) {
$csv_fields[0][] = 'Category';
elseif ($_POST['question']) {
$csv_fields[0][] = 'Question';
}
// .... etc
但认为使用三元运算符可能会有更好的方法。我尝试了以下方法,但当然如果没有设置$_POST,它仍然会向数组添加一个空值,所以我的标题中会出现空白。
$csv_fields[0][] = isset($_POST['category']) ? 'Category' : NULL;
// ... etc
我最终得到了类似的东西:
[0] =>
[1] => Question
[2] =>
[3] => Partner
// ... etc
所以我的问题是,如果未设置 $_POST 变量,我如何使用三元运算符跳过而不是设置数组值?
或者有没有更好的方法?
谢谢
【问题讨论】:
-
合作伙伴来自哪里?
-
这只是我设置的另一个标题。您可以看到我在上面的第一个代码块中隐式设置它。这只是一个例子。我不想展示我的整个脚本,因为很清楚我想从 sn-p 做什么。你应该能够从中推断出来......
标签: php ternary-operator