检查数组是否为空
Check if array empty
问题:保存多个POST时保存了不需要的空POST(s)。
问题:如何检查数组是否为空?
我想检查 $value[0]
是否为空并且只保存包含文本的值。
请随时更改下面的代码或使用新示例。
foreach ($_POST['bedomning'] as $elevens_id => $value) {
$ident = $_POST['ident'];
$amne_id = $_POST['amne_id'];
$datumet = $_POST['datum'];
$lararen = $_SESSION['lid'];
$array_empty = array_filter($value[0]);
if (!empty($array_empty)){
try{
$ny_bedomning = $db->prepare("
INSERT INTO `abb_larare`
(ident, amne_id, abb_bed_text, elev_id, lid, datum)
VALUES (:ident, :amne_id, :abb_bed_text, :elev_id, :lid, :datum)
");
$ny_bedomning->bindParam(':ident', $ident, PDO::PARAM_STR);
$ny_bedomning->bindParam(':amne_id', $amne_id, PDO::PARAM_INT);
$ny_bedomning->bindParam(':abb_bed_text', $value[0], PDO::PARAM_STR);
$ny_bedomning->bindParam(':elev_id', $elevens_id, PDO::PARAM_INT);
$ny_bedomning->bindParam(':lid', $lararen, PDO::PARAM_INT);
$ny_bedomning->bindParam(':datum', $datumet, PDO::PARAM_STR);
$ny_bedomning->execute();
}catch(PDOException $e){
die($e->getMessage());
}
}
}
使用empty()
检查空值。试试 -
if (!empty($value[0])) {
// do staff
}
empty
适用于 -
- ""(空字符串)
- 0(整数 0)
- 0.0(0 作为浮点数)
- "0"(0 作为字符串)
- 空
- 错误
- array()(空数组)
- $变量; (声明的变量,但没有值)
问题:保存多个POST时保存了不需要的空POST(s)。
问题:如何检查数组是否为空?
我想检查 $value[0]
是否为空并且只保存包含文本的值。
请随时更改下面的代码或使用新示例。
foreach ($_POST['bedomning'] as $elevens_id => $value) {
$ident = $_POST['ident'];
$amne_id = $_POST['amne_id'];
$datumet = $_POST['datum'];
$lararen = $_SESSION['lid'];
$array_empty = array_filter($value[0]);
if (!empty($array_empty)){
try{
$ny_bedomning = $db->prepare("
INSERT INTO `abb_larare`
(ident, amne_id, abb_bed_text, elev_id, lid, datum)
VALUES (:ident, :amne_id, :abb_bed_text, :elev_id, :lid, :datum)
");
$ny_bedomning->bindParam(':ident', $ident, PDO::PARAM_STR);
$ny_bedomning->bindParam(':amne_id', $amne_id, PDO::PARAM_INT);
$ny_bedomning->bindParam(':abb_bed_text', $value[0], PDO::PARAM_STR);
$ny_bedomning->bindParam(':elev_id', $elevens_id, PDO::PARAM_INT);
$ny_bedomning->bindParam(':lid', $lararen, PDO::PARAM_INT);
$ny_bedomning->bindParam(':datum', $datumet, PDO::PARAM_STR);
$ny_bedomning->execute();
}catch(PDOException $e){
die($e->getMessage());
}
}
}
使用empty()
检查空值。试试 -
if (!empty($value[0])) {
// do staff
}
empty
适用于 -
- ""(空字符串)
- 0(整数 0)
- 0.0(0 作为浮点数)
- "0"(0 作为字符串)
- 空
- 错误
- array()(空数组)
- $变量; (声明的变量,但没有值)