Php 对于每个,如果有空:无空格

Php 对于每个,如果有空:无空格,php,Php,我正在使用一个foreach循环。如果条件返回空,它应该echosomething。但我得到了相反的效果。我正在努力确保帖子中确实包含数据,而不仅仅是空格。以下是我到目前为止的情况: <?php $transponame = $_POST['transponame']; $transpoid = $_POST['transpoid']; foreach( $transponame as $key => $n ) { $name = m

我正在使用一个
foreach
循环。如果条件返回空,它应该
echo
something。但我得到了相反的效果。我正在努力确保帖子中确实包含数据,而不仅仅是
空格。以下是我到目前为止的情况:

<?php
     $transponame = $_POST['transponame'];
     $transpoid = $_POST['transpoid'];

     foreach( $transponame as $key => $n ) {
         $name = mysql_real_escape_string($name);
         $name = htmlentities($name, ENT_QUOTES);
         $n = mysql_real_escape_string($n);
         $n = htmlentities($n, ENT_QUOTES);
         $transpoid[$key] = htmlentities(strip_tags($transpoid[$key]),ENT_QUOTES);
         if (!empty($n) && !empty($transpoid[$key])) { 
             echo "its empty";
         }  

     } 
?>


带有
空白的变量
不为空。因此,您必须
trim
该值

<?php
$transponame = $_POST['transponame'];
$transpoid = $_POST['transpoid'];

foreach( $transponame as $key => $n ) {
    $name = mysql_real_escape_string($name);
    $name = htmlentities($name, ENT_QUOTES);
    $n = mysql_real_escape_string($n);
    $n = htmlentities($n, ENT_QUOTES);
    $transpoid[$key] = htmlentities(strip_tags($transpoid[$key]),ENT_QUOTES);
if (empty(trim($n)) || empty(trim($transpoid[$key]))) { 
echo "its empty";
};  

} ?>


改变!空($transpid[$key])到!empty($key)如果您想查看它是否真的是空的,
trim()
the
$\u POST
然后查看它是否是空的。此外,您还想查看
If(empty()
而不是
If(!empty())
否则,如果它不是空的,则与您提到的相反。这起作用了!谢谢!同时,为了帮助其他人,以防他们遇到同样的问题,我更新了我弄糟的部分代码!