Php 在数组中查找并没有找到任何内容
当我上传一个文件并想检查文件中是否存在文本aantal时。我使用此代码检查:Php 在数组中查找并没有找到任何内容,php,arrays,Php,Arrays,当我上传一个文件并想检查文件中是否存在文本aantal时。我使用此代码检查: <?php // Loop through each file for( $i=0 ; $i < $total ; $i++ ) { // Get the temp file path $tmpFilePath = $_FILES['upload']['tmp_name'][$i]; // Make sure we have a file path if ($tmpFile
<?php
// Loop through each file
for( $i=0 ; $i < $total ; $i++ )
{
// Get the temp file path
$tmpFilePath = $_FILES['upload']['tmp_name'][$i];
// Make sure we have a file path
if ($tmpFilePath != "")
{
//Setup our new file path
$newFilePath = $config['temp_uploads'].'/'.$_FILES['upload']['name'][$i];
// Upload the file into the temp dir
if(move_uploaded_file($tmpFilePath, $newFilePath))
{
//Handle other code here
echo 'Upload succes<br /><br />';
echo 'File name: '.$_FILES['upload']['name'][$i];
echo '<br /><br />';
$lines = file($newFilePath); //file in to an array
echo 'Find: '.array_search('Aantal', $lines);
echo '<br /><br />';
print_r($lines);
echo '<br /><br />';
// remove file
unlink($newFilePath);
}
else
{
echo 'Upload error<br /><br />';
}
}
}
?>
有什么建议说明为什么没有显示指针2224或指针2224的文本吗?22 Aantal:2与Aantal不同。寻找一个精确的匹配项,而不是包含您要寻找的内容的内容
您可以通过以下方式获得更好的服务:
如果你想像这样松散地搜索,你可以使用preg_grep
$match = reg_grep("/Aantal/", $lines);
它使用正则表达式并查找任何包含Aantal的数组值,即使已经回答了,我也尝试过了 它将文件中的每一行读入数组 然后使用空格作为限定词,将每行分解成单词 然后在该单词数组中搜索所需单词的第一个匹配项 图像中的输出计数器因循环从零开始而不同 没有发现或测试多个事件
<?php
// Loop through each file
function find_word($word){
$rows = file('test.txt');
foreach($rows as $row_no => $row_content){
$words = explode(' ',$row_content);
if(array_search($word,$words)){
echo $row_no ." \t\t\t\t " .$row_content;
echo '<hr />';
}else{
echo 'NOT FOUND<hr />';
}
}
}
echo find_word('Aantal');
?>
22安塔尔:2与安塔尔不同。array_search查找的是精确匹配,而不是包含您要查找的内容。请执行var_dump$行[2223]。检查字符串是否没有一些附加值characters@Justinas它就在输出中:[2223]=>22aantal:2。这不是同一根弦
$match = reg_grep("/Aantal/", $lines);
<?php
// Loop through each file
function find_word($word){
$rows = file('test.txt');
foreach($rows as $row_no => $row_content){
$words = explode(' ',$row_content);
if(array_search($word,$words)){
echo $row_no ." \t\t\t\t " .$row_content;
echo '<hr />';
}else{
echo 'NOT FOUND<hr />';
}
}
}
echo find_word('Aantal');
?>