查看菜品的内容时获取空白页

时间:2018-09-11 12:42:28

标签: php

请帮助我,因为我是PHP的新手。我正在从文件读取并将内容加载到数组中。现在,我只想显示一条记录,但结果是空白页。当我显示整个数组时,它可以正常工作,但我将if语句放入特定记录中,但它不起作用。请参见下面的代码。

<?php
    $strreturn = "H123458"; 
    $customerRec = array(); 
    $destination_url ="./users/patient.txt";
    $myfile = fopen($destination_url, "r") or die("Unable to open file!");
    $c=0;
    while(!feof($myfile)) {             
        $customerRec[$c++] = fgets($myfile);        
    }
    fclose($myfile);

    for($i=0;$i<count($customerRec);$i=$i+6){
        if($customerRec[$i] == $strreturn){ 
            for($t=$i;$t<6+$i;$t++){
                echo "$customerRec[$t]"."<br/>";                
            }                           
        }           
    }   
?>

-patient.txt ----

H123456
Hemede
1234567896541
2018-09-01
2018-09-30
CPT805
H123457
Mario
9876543214569
2018-09-02
2018-09-29
CPT280
H123458
Michael
3698521478965
2018-09-03
2018-09-28
PML209
H123521
Laurant
7532159852365
2018-09-04
2018-09-24
FRS965
H123954
Theos
9658741258632
2018-09-05
2018-09-19
OTH77

4 个答案:

答案 0 :(得分:1)

只需将您的行 if($ customerRec [$ i] == $ strreturn){替换为下面的行

focusSearch(FOCUS_DOWN).requestFocus();

希望这会有所帮助

答案 1 :(得分:0)

这是一个非常具体的问题,但是这里提供了一个解决方案,该解决方案可能会为您提供一些优化提示,并且无需担心探索PHP手册

// Load the file contents into an array, trimming away any whitespace
$customerRec = array_map('trim', file(__DIR__ . '/users/patient.txt'));

// Split the array into groups of 6
$groups = array_chunk($customRec, 6);

// Find the groups with the first record equal to "H123458"
$search = "H123458";
$found = array_filter($groups, function($group) use ($search) {
    return reset($group) === $search;
});

// Loop over the found groups and display them
foreach ($found as $group) {
    echo implode('<br/>', $group);
}

参考文献:

答案 2 :(得分:0)

您的代码确定。 但是数组元素最后可能会有一个额外的换行符。

这就是为什么if语句中的比较不起作用的原因。 在if语句之前尝试以下行:

echo urlencode($customerRec[$i])."<br/>";

您可能会看到以下内容:H123458%0A

对此的一种解决方案是在fget周围使用trim函数。

答案 3 :(得分:-3)

我建议您使用file_get_contents函数。它很容易解决您的问题。

替换为文件abc.txt

 $file = file_get_contents('abc.txt');

    $arr = explode("\n", $file);

    print_r($arr);