チェック無しだと値が送信されないので、チェックボックスの前に同一 name で「hidden」を記述する。
チェック無しの時には「hidden」の「0」が送信される。
チェック有りの場合は、後に書かれているチェックボックスの「1」が送信される。
<input type="hidden" name="chkItem1" value="0"> <input type="checkbox" name="chkItem1" value="1">
チェック無しだと値が送信されないので、チェックボックスの前に同一 name で「hidden」を記述する。
チェック無しの時には「hidden」の「0」が送信される。
チェック有りの場合は、後に書かれているチェックボックスの「1」が送信される。
<input type="hidden" name="chkItem1" value="0"> <input type="checkbox" name="chkItem1" value="1">
作成。
touch 関数は、ファイルの最終更新日および最終アクセス時間をセットする関数。
ファイルが存在していなかったら、ファイルが作成される。
touch('makefile.txt');
削除。
unlink('delefile.txt');
全文読み込む。( file_get_contents 関数 )
$filename = 'example.txt'; $content = file_get_contents($filename); echo $content;
一行ずつ配列に格納する。( file 関数 )
$filename = 'example.txt'; $lines = file($filename); print_r($lines);
改行まで格納されるので、不要な場合は「FILE_IGNORE_NEW_LINES」のフラグを第二引数に付ける。
$lines = file($filename, FILE_IGNORE_NEW_LINES);
上書き。
$filePath = 'file.txt'; $data = 'testMessage'; file_put_contents($filePath, $data, LOCK_EX);
追記。
$filePath = 'file.txt'; $data = "testMessage\n"; file_put_contents($filePath, $data, FILE_APPEND | LOCK_EX);
第1引数に指定したファイルが存在しない場合はファイルを作成します。
存在する場合はそのファイルを上書きします。但し、第3引数に「FILE_APPEND」が設定されている場合は追記となります。
第3引数に渡せる定数は以下の3つです。
FILE_APPEND:ファイルが存在している場合、上書きではなく追記を行う。
LOCK_EX:書き込み処理中にファイルを排他ロックする。
FILE_USE_INCLUDE_PATH:ファイルをインクルードディレクトリから探す。
複数指定したい場合は「|」(OR演算子)で連結し指定する。
PHP でファイルを作成,編集,削除,読み取り,一覧(ディレクトリの内容を表示)に最低必要な実行ユーザのパーミッションは、それぞれ以下のとおり。
| ディレクトリ | ファイル | |
|---|---|---|
| 作成 | -wx | |
| 編集 | --x | -w- |
| 削除 | -wx | --- |
| 読み取り | --x | r-- |
| 一覧 | r-- | --- |
PHP で作成したファイルなら、ファイルの所有者は PHP の実行ユーザ(apacheなど)。
サーバの cron を使って PHP ファイルを実行する場合、その PHP ファイルの実行ユーザは cron の実行ユーザーになる。
$example1 = "例1です"; $example2 = "例2です"; $example3 = "例3です"; for ($i=1; $i<=3; $i++) { echo ${"example".$i}; }
explode 関数は指定した区切り文字によって、文字列を分割して配列にする。
$data = "りんご,みかん,いちご,メロン,バナナ"; $sample = explode(',',$data);
implode 関数は配列の要素を結合して文字列に変換する。
結合時に区切り文字を付加することができる。
$arr = array("taro","jiro","saburo"); $result = implode(',', $arr);
$hoge = 'hoge'; function func(){ global $hoge; echo $hoge; } func();
※ グローバル変数は、デフォルトでは関数外でのみ使用される変数となっていて、関数内で使うためにはグローバルで使う変数を宣言しなくてはならない。
<?php $list = [ "1" => "選択1", "2" => "選択2" ]; ?> <form method="GET"> <select name="data" onChange="submit(this.form)"> <?php foreach ($list as $a => $b): ?> <option value="<?php echo $a; ?>"<?php if(isset($_GET['data']) && $_GET['data'] == $a) echo " selected"; ?>><?php echo $b; ?></option> <?php endforeach; ?> </select> </form>
※ form 要素の action 属性は、HTML5 から省略が可能で、省略した場合には自身にデータを送信します。
※ onChange="submit(this.form)" で、変更時 submit されます。
※ foreach 文はコロン構文を使っています。