PHP에서 file() 함수를 사용하여 텍스트 파일에서 만들어진 배열에서 특정 단어를 추출하려고했습니다.PHP 파일에서 생성 된 배열의 특정 단어를 검색하지 않습니다.
sample.txt 텍스트 파일은 다음과 같이이다 :
A registration has been received.
Name: test
Lastname: test2
Email: [email protected]
Company/School: Test2
Company2: test3
Address1: test4
Address2: test5
City: test6
State: test7
Country: test8
Zipcode: test9
지금 사용한 파일() 함수는 배열에 텍스트 파일을 넣어.
$file_name='sample.txt';
$file_array=file($file_name);
그런 다음 각 값을 추출하고이 배열에서 '이름'이라는 단어를 검색하기 위해 루프를 탐색했습니다.
$data1='Name';
foreach($file_array as $value){
if(stripos($value,$data1)===FALSE)
echo "Not Found";
else
echo "Found";
}
하지만 항상 '찾을 수 없음'이 인쇄됩니다. 나는 strpos, strstr, preg_match를 사용해 보았지만 아무 소용이 없었다. 또한 파일에서 작성하는 대신 단어의 일반 배열을 사용하면 제대로 작동합니다.
미리 감사드립니다.
업데이트 :이 문제의 목적은 먼저 어떤 필드가 전인지를 찾는 것입니다. 'Name'과 그 값 ex. 'test'
이 코드를 시도했지만 여전히 '찾을 수 없음'을 인쇄합니다. – Sugat
print_r ($ file_array)을 사용하고 키 모양이 무엇인지 결정하려고합니다. – Matthew
당신의 요점을 봅니다. 따라서 키는 실제로 "[2] => Name : test"와 같은 숫자입니다. 따라서 숫자를 지정하는 이름을 가져올 수 있으며이 경우 "이름"대신 "2"입니다. 그러나이 경우 배열 키를 먼저 확인한 다음 그에 따라 값을 변경해야하므로 "이름"의 위치가 텍스트 파일에서 변경되면 스크립트가 중단됩니다. 그러나 어쨌든 이것이 지금 일할 수 있기 때문에 고맙습니다. – Sugat