TOP ▲ itcore TOP プログラムパーツ

uRirekiSave キーワードの履歴を保存する。新しい順。指定数まで。 | itcore 2018年

PHP

PHP TOP

関数

<?php
function uRirekiSave($file, $keyword, $num) {
    $keyword = trim($keyword);
    if ("" == $keyword) return;
    if (file_exists($file)) {
        $data = file_get_contents($file);
    } else {
        $data = $keyword;
    }
    $arr = explode("\n", $data);
    $data2 = "$keyword";
    $no = 1;
    foreach ($arr as $keyword2) {
        if ($no == $num) break;
        if ($keyword2 == $keyword) continue;
        $data2 .= "\n$keyword2";
        $no++;
    }
    file_put_contents($file, $data2);
}
?>

テストプログラム

<?php include_once "uRirekiSave.func"; ?>
<?php
  $file = "uRirekiSave.dat";
  uRirekiSave($file, "2", 10);
  uRirekiSave($file, "1", 10);
  $data = file_get_contents($file);
  echo nl2br($data);
?>

実行結果


Warning: file_put_contents(uRirekiSave.dat): Failed to open stream: Permission denied in /var/www/www/htdocs/php_c/uRirekiSave.func on line 19

Warning: file_put_contents(uRirekiSave.dat): Failed to open stream: Permission denied in /var/www/www/htdocs/php_c/uRirekiSave.func on line 19
1
2