次のようなphp出力があります。
data00,data01,data02,data03, , , and so on
data10,data11,data12,data13, , , and so on
data20,data21,data22,data23, , , and so on
(and so on in rows)
そして、このデータを生成するこのphpコード。
<?php
$searchthis = $_GET["sea1"];
$matches = array();
$handle = @fopen("sources.csv", "r");
if ($handle)
{
while (!feof($handle))
{
$buffer = fgets($handle);
if(strpos($buffer, $searchthis) !== FALSE)
$matches[] = $buffer;
}
fclose($handle);
}
//show results:
print_r($matches);
今、ページのどこかにある特定の列に特定の行を表示したいと思います。
<?php echo $matches[0]; ?>
必要な特定のデータではなく、行全体が表示されます。私はこのようなものを作ることができます:
$output = echo $matches[0]
しかしその後?$output をどのように使用すればよいですか?? たとえば、行全体の代わりに 2 番目の単語が必要な場合などです。
さて、答えの後、ファイルを次のように更新します。plsは、私がどこか間違っているかどうかを確認してください。
<!DOCTYPE html>
<html>
<head>
<meta content="text/html; charset=windows-1252" http-equiv="content-type">
<title>my page</title>
</head>
<body>
<div style="text-align: center;">
<title>My Page</title>
<form name="myform" action="systemmonitor.php" method="GET">
<div align="center">My page<br>
<br>
<input name="sea1" placeholder="customtext" size="25" type="text"> <br>
<br>
<input name="sea2" placeholder="customtext" size="25" type="text"> <br>
<br>
<input name="sea" value="submit" type="submit"><br>
<br>
<?php
$searchthis = $_GET["sea1"];
$matches = array();
$handle = @fopen("systemlines.csv", "r");
if ($handle)
{
while (($buffer = fgetcsv($handle)) !== FALSE)
{
$check = preg_grep("/$searchthis/",$buffer);
if(!empty($check)){
$matches[] = $buffer;
}
}
fclose($handle);
}
//show results:
print_r($matches);?>
</body>
</html>
<?php echo $matches[0][4]; ?>