Php 奇偶数排序到文本文件中

Php 奇偶数排序到文本文件中,php,Php,大家好,我需要帮助整理偶数和奇数。数字以表单形式输入,并被调用到php文件(在底部),然后我需要在文本文件中显示它们。这部分对我来说都很好。我很难区分偶数和奇数。我知道我们需要使用模数命令,但我不知道如何将其放入循环中 $valOne = $_GET["value1"]; $valTwo = $_GET["value2"]; $valThr = $_GET["value3"]; $valFou = $_GET["value4"]; $valFiv = $_

大家好,我需要帮助整理偶数和奇数。数字以表单形式输入,并被调用到php文件(在底部),然后我需要在文本文件中显示它们。这部分对我来说都很好。我很难区分偶数和奇数。我知道我们需要使用模数命令,但我不知道如何将其放入循环中

    $valOne = $_GET["value1"];
    $valTwo = $_GET["value2"];
    $valThr = $_GET["value3"];
    $valFou = $_GET["value4"];
    $valFiv = $_GET["value5"];
    $valSix = $_GET["value6"];
    $valSev = $_GET["value7"];
    $valEig = $_GET["value8"];
    $valNine = $_GET["value9"];
    $valTen = $_GET["value10"];

    $myFile = "test.txt";
    $fh = fopen($myFile, 'w') or die("can't open file");
    $array1= array ($valOne, $valTwo, $valThr, $valFou,$valFiv,
                $valSix,$valSev,$valEig,$valNine,$valTen);
    foreach($array1 as $key => $value){
    fwrite($fh, $value. "\t");


    }
    fclose($fh);
你想要的是

if ($number % 2 == 0) {
    // even number
}
else
{
    // odd
}
就你而言

foreach($array1 as $key => $value){
    if ($value % 2 == 0) {
         fwrite($fh, $value. "\t");
    }
}
在一个文件中分隔偶数和奇数

$even = array_filter($array1, function($number) { return $number % 2 == 0; });
$odd = array_filter($array1, function($number) { return $number % 2 == 1; });

$max = max(count($even), count($odd));
for ($i = 0; $i < $max; $i++) {
    $n1 = isset($even[$i]) ? $even[$i] : "";
    $n2 = isset($odd[$i]) ? $odd[$i] : "";

    fwrite($fh, str_pad($n1, 20, STR_PAD_RIGHT) . $n2);
}
$偶数=array\u过滤器($array1,函数($number){返回$number%2==0;});
$odd=array_filter($array1,函数($number){返回$number%2==1;});
$max=max(计数($偶数),计数($奇数));
对于($i=0;$i<$max;$i++){
$n1=isset($偶数[$i])?$偶数[$i]:“”;
$n2=isset($odd[$i])?$odd[$i]:“”;
fwrite($fh,str_pad($n1,20,str_pad_RIGHT)。$n2);
}
尝试以下操作

 $valOne = $_GET["value1"];
$valTwo = $_GET["value2"];
$valThr = $_GET["value3"];
$valFou = $_GET["value4"];
$valFiv = $_GET["value5"];
$valSix = $_GET["value6"];
$valSev = $_GET["value7"];
$valEig = $_GET["value8"];
$valNine = $_GET["value9"];
$valTen = $_GET["value10"];

$myFile = "test.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$array1= array ($valOne, $valTwo, $valThr, $valFou,$valFiv,
            $valSix,$valSev,$valEig,$valNine,$valTen);
foreach($array1 as $key => $value){
  if($value%2==0)
   {
     fwrite($fh, $value. "\t");
      }
    else
    {
      //write your own code..
       }

}
fclose($fh);

是的,但我要把它放在foreach循环的正下方吗?因为我之前试着把它放在那里,但它不起作用。在foreach里面?我想你会过滤数组中的所有偶数,所以你必须检查每个数字。非常感谢你,先生。我现在可以处理这个问题了……如果我想将输出分开,比如将所有偶数放在一边,将所有奇数放在另一边,这是可能的吗?你说的分开是什么意思?两个文件?在这种情况下,您只需打开两个文件流,然后将偶数写入偶数文件流,将其他数字写入奇数文件流。两个文件是另一种方式。我想知道,在同一个文件中,是否可能在一侧有两列为偶数,另一侧为奇数。您的代码是错误的。这
echo$myvar=($value%2==0?'$value':'')不应该有
回音
$value
不应在单引号中。
 $valOne = $_GET["value1"];
$valTwo = $_GET["value2"];
$valThr = $_GET["value3"];
$valFou = $_GET["value4"];
$valFiv = $_GET["value5"];
$valSix = $_GET["value6"];
$valSev = $_GET["value7"];
$valEig = $_GET["value8"];
$valNine = $_GET["value9"];
$valTen = $_GET["value10"];

$myFile = "test.txt";
$fh = fopen($myFile, 'w') or die("can't open file");
$array1= array ($valOne, $valTwo, $valThr, $valFou,$valFiv,
            $valSix,$valSev,$valEig,$valNine,$valTen);
foreach($array1 as $key => $value){
  if($value%2==0)
   {
     fwrite($fh, $value. "\t");
      }
    else
    {
      //write your own code..
       }

}
fclose($fh);