そのまま使えるPHPプログラムの関数 当ホームページでは、PHPプログラムを記述する際に、コードを全て1から書くのも面倒な為、よく使う関数をまとめてみました。そのまま関数を使えるようにしていますので、必要な関数を呼び出すだけで使えると思います。適当な関数があればご自由にお使い下さい。 | |
|
◆メニュー
▼スポンサードリンク ◆数値
▽2つの値の間の数をランダムに返す
▽大きい方の値を返す ▽小さい方の値を返す ▽ファイル内容(値だけ)を大きい順に並べる(値だけ) ▽ファイル内容(値だけ)を小さい順に並べる ▽ファイル内容(キーと値)を大きい順に並べる ▽ファイル内容(キーと値)を小さい順に並べる ◆掲示板
◆ログ
◆ファイル操作
◆文字列
▽不要語を取り除く
▽終端記号を取り除く ▽全て数字化チェック ▽全て英数字かチェックする ▽全てひらがなかチェックする ▽URLかチェックする ▽メールアドレスかチェックする ▽半角英数字が含まれているかチェックする ◆HTML
◆アクセス解析
◆データベース
◆カレンダー
◆解析
◆WEBページをTEXTへ
A71214 T57 Y49 (C)あいねこの館(aineko's YAKATA) |
◇【関数】ファイル操作を行う
String file_mode("対象ファイル","ファイルモード","書き込みデータ")
【内容】 対象ファイル:ファイルの入出力を実行するファイルパス ファイルモード:r,r+⇒リード、w,w+⇒書き込み、 a,a+⇒追加書き込み(ファイルの後ろに書き込む) aa,aa+⇒追加書き込み(ファイルの前に書き込む) 書き込むデータ:ファイルモードがw系、a系の場合のみ有効 【戻り値】 ファイルモードa系,w系は成功した場合は1、rは対象ファイルの内容 ◇【関数の内容】
▼スポンサードリンク
function file_mode($file_path,$file_mode,$write_data){
//最後の出力結果
$data = "";
//ファイルを読み込む場合
if($file_mode=="r" || $file_mode=="r+"){
//ファイルが存在するか調べる
if(file_exists($file_path)){
$data = file_get_contents($file_path);
}
else{
$data = "読み込むファイルが存在しません。";
}
}
//ファイルを書き込む場合
elseif($file_mode=="w" || $file_mode=="w+"){
$fp = fopen($file_path,$file_mode);
if (!$fp) {
$data= "ファイルポインタのオープンに失敗しました。";
}
if (!flock($fp,2)) {
$data = "ファイルロックに失敗しました。";
}
if (!fputs($fp,$write_data)) {
$data = "書き込みに失敗しました。";
}
if (!flock($fp,3)) {
$data = "ファイルロックの解放に失敗しました。";
}
//ファイルに正常に書きこめた場合の戻り値を1にする
if($data==""){
$data = 1;
}
fclose($fp);
}
//ファイルモードがa系の場合
elseif($file_mode=="a" || $file_mode=="a+" || $file_mode=="aa" || $file_mode=="aa+"){
//ファイルの最後に書き込む場合
if($file_mode=="a" || $file_mode=="a+"){
$fp = fopen($file_path,$file_mode);
if (!$fp) {
$data= "ファイルポインタのオープンに失敗しました。";
}
if (!flock($fp,2)) {
$data = "ファイルロックに失敗しました。";
}
if (!fputs($fp,$write_data)) {
$data = "書き込みに失敗しました。";
}
if (!flock($fp,3)) {
$data = "ファイルロックの解放に失敗しました。";
}
fclose($fp);
}
//ファイルの最後に書き込む場合
else{
if(file_exists($file_path)){
//ファイルの内容を読みこんでおく
$data = file_get_contents($file_path);
}
//書き込む内容を戦闘にする
$write_data = $write_data . $data;
$fp = fopen($file_path,"w");
if (!fputs($fp,$write_data)) {
$data = "書き込みに失敗しました。";
}
if (!flock($fp,3)) {
$data = "ファイルロックの解放に失敗しました。";
}
fclose($fp);
$data = 1;
}
if($data==""){
$data = 1;
}
}
else{
$data = "ファイルモードが不正です。";
}
return $data;
}
▼スポンサードリンク◇【サンプルプログラム】
test.txtはtestdataと記載。
【ファイルの内容を取得する場合】 $file_path = "test.txt"; $file_mode = "r"; $write_data = ""; $result = file_mode($file_path,$file_mode,$write_data); print $result; 【ファイルの内容を取得する場合】 $file_path = "test.txt"; $file_mode = "aa"; $write_data = "test2"; $result = file_mode($file_path,$file_mode,$write_data); print $result; ◇【実行結果】
【ファイルの内容を取得する場合】
testdata 【ファイルの内容を取得する場合】 test2 testdata ◇【解説】
特にありません。
|