php에서 파일 읽고 파일 일부 내용 바꾸기 채택완료

php에서 파일을 읽고 읽은 파일의 일부 내용을 바꾸려면

replace를 쓰면 되는 걸로 알고 있습니다.

replace를 써서 바꾸려면 그 내용을 특정지어서 해야하는 걸로 아는데

Copy
value = "dsdasdasdsadsad"

또는

Copy
value = "sdkqwoldfkasdmad"

처럼 내용이 똑같지가 않은 경우에는 어떻게 해야하나요?

Copy
value = "내용"

문장 전체를 다 삭제하고 싶습니다.

답변 4개

채택된 답변
+20 포인트

Copy
<?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()

를 사용하시면 굳이 리플레이스가 필요없을 텐데요.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

https://devjhs.tistory.com/458

여길 참조하면.. 배열로 여러가지 내용을 한번에 바꿀수 있습니다.

로그인 후 평가할 수 있습니다

댓글을 작성하려면 로그인이 필요합니다.

답변을 작성하려면 로그인이 필요합니다.

로그인
🐛 버그신고