定义我有这样的代码添加到阵列如果-php
$courses = array("name_lic", "name_mes", "name_dou");
如何,如果name_lic, name_mes, name_douc
定义我可以添加到阵列?
例如:name_lic
被定义,然后是插入数组,name_mes
未定义或为空然后未插入到数组中,name_dou
也被插入。
基本阵列只能有那些在我的例子定义
应弦:
$courses = array("name_lic");
定义我有这样的代码添加到阵列如果-php
$courses = array("name_lic", "name_mes", "name_dou");
如何,如果name_lic, name_mes, name_douc
定义我可以添加到阵列?
例如:name_lic
被定义,然后是插入数组,name_mes
未定义或为空然后未插入到数组中,name_dou
也被插入。
基本阵列只能有那些在我的例子定义
应弦:
$courses = array("name_lic");
我要去猜“用户插入”是指由于提交表单而出现在$_POST
中的值。
如果是这样,那么尝试这样的事情
$courses = array("name_lic", "name_mes", "name_dou");
// Note, changed your initial comma separated string to an actual array
$selectedCourses = array();
foreach ($courses as $course) {
if (!empty($_POST[$course])) {
$selectedCourses[] = $course;
}
}
你的意思是这样
if (isset($name_lic)) {
$courses[] = $name_lic;
}
...等,为name_mes, name_dou
isset
将返回TRUE
如果该值是一个空字符串,显然你不想要。尝试
if (!empty($_POST['name_lic'])){
$courses[] = $_POST['name_lic'];
}
// etc
例如,如果你想为$ _ POST所有值做到这一点:
foreach ($_POST as $key => $value){
if (!empty($value)){
$courses[$key] = $value;
}
}
首先,如果你的代码是:
$courses = array("name_lic, name_mes, name_dou");
然后$课程是一个只有一个键的数组,您应该删除像这样的“”:
$courses = array("name_lic", "name_mes", "name_dou");
现在,如果你想知道,如果数组包含值“name_lic”你应该使用功能in_array()这样的关键:
if (in_array("name_lic", $courses)) {
//Do stuff
}
你所说的“定义的字符串”是什么意思? – rid 2011-06-12 22:28:29
有一个用户插入的值,在我的情况下,不是空的。只有具有值的字段才会添加到数组中。 – anvd 2011-06-12 22:30:20
“由用户插入”是指“存在于$ _POST'数组中吗?” – Phil 2011-06-12 22:34:27