--- id: php-file-create title: "PHP File Create" category: "Programming_Language" status: "draft" verification_status: "conceptual" canonical_id: "" aliases: ["fwrite()", "append mode", "PHP 파일 생성/쓰기"] duplicate_of: "" source_trust_level: "B" confidence_score: 0.9 created_at: 2026-07-04 updated_at: 2026-07-04 review_reason: "" merge_history: [] tags: ["php", "programming", "w3schools", "files", "fwrite"] raw_sources: ["https://www.w3schools.com/php/php_file_create.asp"] applied_in: [] github_commit: "" --- # [[PHP File Create]] ## 🎯 한 줄 통찰 (One-line insight) PHP uses the SAME function (`fopen()`) to both open AND create files — passing `"w"` or `"a"` mode on a non-existent filename silently creates it, meaning there's no separate "create file" function; opening a file for writing IS how you create one. [S1] ## 🧠 핵심 개념 (Core concepts) - **`fopen($name, "w")` on a nonexistent file** — creates it. [S1] - **`fwrite($file, $string)`** — writes a string to an open file. [S1] - **`"w"` mode overwrites** — opening an EXISTING file in `"w"` mode ERASES all its content before writing new data. [S1] - **`"a"` mode appends** — preserves existing content, adds new data at the end. [S1] - **File permissions** — PHP must have write access to the target directory, or `fopen`/`fwrite` will fail. [S1] ## 📖 세부 내용 (Details) - Create a new file: `$myfile = fopen("testfile.txt", "w")`. [S1] - Write multiple lines: `$myfile = fopen("newfile.txt", "w") or die("Unable to open file!"); fwrite($myfile, "John Doe\n"); fwrite($myfile, "Jane Doe\n"); fclose($myfile);`. [S1] - Overwrite demonstration: opening the same "newfile.txt" again with `"w"` and writing different names ERASES "John Doe"/"Jane Doe" entirely, leaving only the new content. [S1] - Append demonstration: opening with `"a"` and writing adds new lines AFTER the existing content, without erasing anything. [S1] ## ⚖️ 모순 및 업데이트 (Contradictions & updates) - **w 모드의 파괴적 동작**: 기존 파일을 "w" 모드로 열면 기존 데이터가 전부 삭제된다는 점이 이전/이후 내용 비교 예제로 직접 증명됨. [S1] ## 🛠️ 적용 사례 (Applied in summary) 현재 발견된 실제 적용 사례가 없습니다 — 로그 파일에 새 항목을 추가할 때 "a" 모드를 사용하는 것이 append 모드의 대표 실전 사례다. [S1] ## 💻 코드 패턴 (Code patterns) Append mode preserves existing content (PHP): ```php $myfile = fopen("newfile.txt", "a") or die("Unable to open file!"); fwrite($myfile, "Donald Duck\n"); fwrite($myfile, "Goofy Goof\n"); fclose($myfile); // existing content is preserved; new lines added at the end ``` ## ✅ 검증 상태 및 신뢰도 - **상태:** draft - **검증 단계:** conceptual - **출처 신뢰도:** B (W3Schools — widely used educational reference, not a primary standards body) - **신뢰 점수:** 0.90 - **중복 검사 결과:** 신규 생성 (New discovery) ## 🔗 지식 그래프 (Knowledge Graph) - **상위/루트:** [[PHP Tutorial]] - **관련 개념:** [[PHP File Open]], [[PHP File Upload]] - **참조 맥락:** 파일 쓰기/덮어쓰기/추가 — 파일 업로드(File Upload) 챕터로 이어짐. ## 📚 출처 (Sources) - [S1] W3Schools — PHP File Create/Write — https://www.w3schools.com/php/php_file_create.asp ## 📝 변경 이력 (Change history) - 2026-07-04: Initial draft synthesized from the W3Schools "PHP File Create/Write" page (Astra wiki-curation, P-Reinforce v3.1 format).