php에서 파일 읽고 파일 일부 내용 바꾸기
본문
php에서 파일을 읽고 읽은 파일의 일부 내용을 바꾸려면
replace를 쓰면 되는 걸로 알고 있습니다.
replace를 써서 바꾸려면 그 내용을 특정지어서 해야하는 걸로 아는데
value = "dsdasdasdsadsad"
또는
value = "sdkqwoldfkasdmad"
처럼 내용이 똑같지가 않은 경우에는 어떻게 해야하나요?
value = "내용"
문장 전체를 다 삭제하고 싶습니다.
!-->!-->!-->답변 4
<?php
$values = [
'value = "dsdasdasdsadsad"',
'123value = "sdkqwoldfkasdmad"456',
'value = "내용"value= "v1" value ="v2"value="v3" value = "v4"',
'value = "dsdasdasdsad
sad"',
];
print_r($values);
/*
Array
(
[0] => value = "dsdasdasdsadsad"
[1] => 123value = "sdkqwoldfkasdmad"456
[2] => value = "내용"value= "v1" value ="v2"value="v3" value = "v4"
[3] => value = "dsdasdasdsad
sad"
)
*/
foreach ($values as &$value) {
$value = preg_replace('@(value\s*=\s*)"[^"]+"@', '$1""', $value);
}
print_r($values);
/*
Array
(
[0] => value = ""
[1] => 123value = ""456
[2] => value = ""value= "" value =""value="" value = ""
[3] => value = ""
)
*/
?>
fopen(), fclose(), fwrite()
를 사용하시면 굳이 리플레이스가 필요없을 텐데요.
답변을 작성하시기 전에 로그인 해주세요.