質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

2306閲覧

PHP データ書き込み 上書きについて

mochio_o7

総合スコア17

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/09/13 02:06

編集2017/09/21 05:11

PHPにてファイルの内容の一部だけ差し替えたいのです。

書き込みをする度に、データを削除して上書きする処理です。

行いたいこととしては、
①ファイルの内容を読み取る
②1行ずつ処理して変数にまとめる
③ファイル内容をまるごと上書き

②をどうしたらよいのかわからない、、
なにかヒントでもいただければ幸いです、、

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mochio_o7

2017/09/13 02:32

コード追加させてもらいました。よろしくお願いいたします。
guest

回答1

0

ベストアンサー

こういうイメージですか?

PHP

1<?php 2 $file = file('log.txt');//log.txt情報を読込 3 $cnt = 0; 4 $delete = 2;//削除したい番号 5 foreach ($file as $value) { 6 $fileContent = explode('<>', $value); 7 if($fileContent[0] == $delete){//削除したい番号と1つめのカラムが一致したら…(今回は1カラム目と想定) 8 unset($file[$cnt]);//一致した行を消す 9 array_splice($file, $cnt, 0,"4<>コンテンツ差し替え\n"); 10 file_put_contents('log.txt',$file);//更新後の配列をfile_put_contentsで上書き 11 break; 12 } 13 $cnt++; 14 } 15 print "コンテンツ差替えしました<br>"; 16?>

入力

1<>コンテンツ1 2<>コンテンツ2 3<>コンテンツ3

出力

1<>コンテンツ1 4<>コンテンツ差し替え 3<>コンテンツ3

投稿2017/09/13 02:11

編集2017/09/13 02:26
motuo

総合スコア3027

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

mochio_o7

2017/09/13 02:18

回答ありがとうございます! 消した行に新しい内容を差し替えたいのですが、その場合はどのようにしたらよいのでしょう、
motuo

2017/09/13 02:27 編集

array_spliceを使うと良いのでは?とりあえず、回答を編集しました。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問