我很抱歉愚蠢的请求,但我无法理解,如何创建将在if / else循环中使用的变量列表。我有一个变量$ category_id和这个变量的不同值(1,2,3等)。我想做一个像这样的陈述
if (isset($category_id) && $category_id == '1') {
some code here
}
但我需要指定此变量的更多值,如
if (isset($category_id) && $category_id == '1,2,5,11') {
some code here
}
我该怎么做?
答案 0 :(得分:4)
定义要检查的选项,然后使用in_array
检查是否使用了其中一个:
$categoryIds = array(1, 2, 5, 11);
if (isset($categoryId) && in_array($categoryId, $categoryIds)) {
// some code here
}
这样,当您添加更多ID时,只有数组变大而不是代码。
答案 1 :(得分:0)
使用此:
Test t = new Test() { Attr = "cat" };
XmlSerializer xmlSerializer = new XmlSerializer(typeof(Test));
StringWriter w = new StringWriter();
xmlSerializer.Serialize(w, t);
w.ToString().Dump();
答案 2 :(得分:0)
示例:
<?php
switch($category_id) {
case 1:
someCode();
break;
case 2:
someCode();
break;
default:
someCodeForIdsWhichAreNotOnAnyCase();
break;
}
答案 3 :(得分:0)
您可以设置array
和loop
以及switch / case
声明。
<强> e.g。强>
$category_id = array('1','2','5','11');
for ($i = 0; $i < count($category_id); $i++) {
switch ($category_id[$i]) {
case ('1') : [CODE HERE]; break;
case ('2') : [CODE HERE]; break;
case ('5') : [CODE HERE]; break;
case ('11') : [CODE HERE]; break;
}
}