2012-11-04 5 views
-3

에 목록에서 특정 데이터를 가지고 :내가 문자열이 같은이 PHP

house1- a normal house 

house2-an office 

house3-a scholl 

는 약 2000 라인이 있습니다. 나는 그것에서 집 1, 집 2, 집 3 등을 얻고 그것을 다른 파일에 넣고 싶다. 좋아요 :

house1 

house2 

house3 

나는 explode 함수가 문자열 분리를 위해 작동한다는 것을 알고 있지만 어떻게해야합니까?

+0

, 당신은 실제 코드의 샘플을 보일 수 있는가? 야생 추측 :'$ array [ 'house3']'등등을 시도해보십시오 ... –

+0

좀 더 명확하게 해줄 수 있습니까? 당신이 요구하는 것을 말하기는 어렵습니다. –

+0

방금 ​​편집했습니다, 더 자세한 정보가 필요합니까? – rethom

답변

0
$fContents = file('path/to/your/file'); 
foreach ($fContents as $row) 
    file_put_contents('path/to/other/file', explode('-', $row)[0] , FILE_APPEND); 

실례지만 (5.4+가 있다고 가정). PHP 5.3


는 :

유효 PHP가 아니다
$fContents = file('path/to/your/file'); 
foreach ($fContents as $row) 
{ 
    $firstField = explode('-', $row); 
    file_put_contents('path/to/other/file', $firstField[0] , FILE_APPEND); 
} 
+0

찌르는 듯이하면 어떨까요 : house1-office-in capital city. 집에 가져 가고 싶다면? – rethom

+0

explode 그러면 문자열이 3 개의 문자열 배열로 나뉘어집니다. ("house1", "-office", "-in capital city") 우리는 단지 그 배열의 첫 번째 요소 (인덱스 0)를 사용하므로 중요하지 않습니다. 그 라인에 더 이상 "-"가있는 우리에게 더 이상은 없습니다. – m02ph3u5

+0

5.4를 필요로하지 않습니다. 색인을 가져 오기 전에 explode 변수를 만드십시오. –

1
$str = "house1- a normal house"; 

$result = explode("-", $str)[0]; 

var_dump($result); 

최신 PHP 버전 (5.4.x)을 사용한다고 가정합니다.

+0

나는 그 형제를 안다. 하지만 거의 2000 목록입니다. 그래서 2000 문자열을 써야합니까? – rethom

+0

@rethom : 목록은 어떻게 표현됩니까? 큰 끈? 배열? 당신이 우리에게 그 정보를주지 않았기 때문에 우리가 당신에게 그것을 요구하고 있음에도 불구하고, 그것은 당신이 나에게서 얻는 것입니다. –

+0

먼저 줄 바꿈을 분해 한 다음 대시로 각 조각을 분해하십시오. –