🎃
PHP
設定ファイルはphp.ini
php.iniは、PHPプログラムの全体的な動作や環境を設定するファイルのことである。
ここで、文字コードやタイムゾーンなどを設定できる。
==と===の違い
==は値
===は値とデータの型
// ==検証
// trueになる
if(1 == '1') {
echo 'true';
} else {
echo 'false';
}
// ===検証
// falseになる
if(1 === '1') {
echo 'true';
} else {
echo 'false';
}
falsy(フォールシー)
falsyとは、型がbooleanではないがfalseになる値のこと
具体的には以下などがある。
"" (空文字)
0 (数値、文字列)
NULL
isset, empty, is_null早見表
phpinfo()でPHPの情報や設定情報を確認する。
<?php
phpinfo();
?>
phpinfo()は以下の場合などに使用する。
- PHPが作動していているかの確認したいとき
- PHPのバージョンを確認したいとき
- php.iniファイルを探したいとき
- php.iniに設定されている内容を変更したとき
print_rで連想配列を分かりやすくになる
foreachのindexと値を取得する
下のソースだと、
$iがindex
$vが値
を表している
ソース
<?php
$arry = ['taro', 'hanako', 'jiro'];
foreach($arry as $i => $v) {
echo '<div>', $i, $v, '</div>';
}
?>
結果
0taro
1hanako
2jiro
globalでローカル変数をグローバル変数にする
null合体演算子で、Nullの場合のとそうでない場合の値の設定を簡単に記載する
定数のconstとdefineの違い
関数が定義しているか確認する
function_existsで可能
外部ファイルを読み込む際の、includeとrequireとrequire_onceの違い
file.php
<?php
$arry['num']++;
include
読み込んだファイルが存在しなくても処理が継続し、警告が表示される。
index.php
<?php
$arry = [
'num' => 0
];
include 'file.php';//存在しない
echo $arry['num'];
結果
require
読み込んだファイルが存在しなくても処理が継続せずエラーが出る。
index.php
<?php
$arry = [
'num' => 0
];
require('file.php');//存在しない
echo $arry['num'];
結果
require_once
requireと同じですが、同じファイルを複数回読み込まないようにする点が異なります。
ファイルがすでに読み込まれている場合、そのファイルは再度読み込まれません。
index.php
<?php
$arry = [
'num' => 0
];
require('file1.php');
require('file1.php');
echo $arry['num'];
結果
名前空間(namespace、use function、use const)
遅延静的束縛 static/self/parent
declare(strict_types=1)で自動変換を行わず、異なった型が渡された場合エラーが起き処理が止まる
<?php
declare(strict_types=1);
function sum(int $a, int $b) {
return $a + $b;
}
var_dump(sum(1.5, 2.5));
実行結果
Fatal error: Uncaught TypeError: Argument 1 passed to sum() must be of the type int, float given,
_GET( _POSTも同様)
以下のファイルに遷移し、usernameとpwdを入力してボタン押下すると
<form action="get.php">
<input type="text" name="username">
<input type="password" name="pwd">
<input type="submit" value="ボタンを押してね">
</form>
以下のソースに遷移する。
<div>
名前:<?php echo $_GET['username']; ?>
</div>
<div>
パスワード:<?php echo $_GET['pwd']; ?>
</div>
以下の画面になる。
Formで配列使用し、まとめて送る
index.php
<form action="receive.php" method="POST">
<div>
<input type="text" name="account[id]">
</div>
<div>
<input type="text" name="account[name]">
</div>
<div>
<input type="text" name="account[pwd]">
</div>
<input type="submit">
</form>
receive.php
<?php
$account = $_POST['account'];
$id = $account['id'];
$name = $account['name'];
$pwd = $account['pwd'];
echo $id, $name, $pwd;
?>
Discussion