勉強したことのメモ

Webエンジニア / プログラマが勉強したことのメモ。

PHPの配列をファイルに保存してPHPやJavaScriptで呼び出す方法

   2024/02/25  PHP JavaScript

PHPの配列をファイルとして保存し、別のページからPHPやJavaScriptで呼び出したかった。以下で対応する。

 

PHP→PHP

//保存
$file = './hogehoge/test.log';
file_put_contents($file, serialize($data), LOCK_EX);

//読込
$file = './hogehoge/test.log';
$data = unserialize(file_get_contents($file));

 

PHP→JavaScript

//保存
$file = './hogehoge/test.js';
$data = 'var data = ' . json_encode($data) . ';';
file_put_contents($file, $data, LOCK_EX);

//読込
<script type="text/javascript" src="./hogehoge/test.js"></script>
<script type="text/javascript">
for (var key in data){
    //PHP側の配列がdataに入っているので適宜処理
}
</script>

 

その他

更新されるのは1日に数回だけど、毎回MySQLから抽出するのは重たいデータとかの場合に利用できる。尚、ファイルを直接参照されると全部見えちゃうので、個人情報とかそういうデータは取り扱わないようにする。

 - PHP JavaScript

  関連記事

JavaScriptで特定の範囲内から数値が被らずにランダムに取り出す方法
JavaScriptで特定の範囲内から数値が被らずにランダムに取り出す方法

1位から20位のランキング内でJavaScriptを用いてランダムに表示させたか ...

table内のiframeのheightを最大高さにする
table内のiframeのheightを最大高さにする

tableのtdの中にリンクがあり、クリックすると td内でiframeが開く。 ...

バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法
バニラJS対応(jQuery非依存)の画像遅延読み込みライブラリ「lazysizes」の利用方法

あるサイトのコーディングデータを貰った際に「lazysizes」というJavaS ...

jQueryにてclosestの使いどころとparent / parentsとの違いについて
jQueryにてclosestの使いどころとparent / parentsとの違いについて

あるソースコードを見ているとjQueryにてclosest()という使ったことの ...

フォームで画像をとりあつかう際にBase64エンコードした上で送信する方法
フォームで画像をとりあつかう際にBase64エンコードした上で送信する方法

PHP等サーバサイド系の言語は利用不可(JSは利用可)な環境でformを作成し画 ...