PHPでよく使う関数まとめ2(自分用)
文字列型 → 数値型にする関数 intval()関数
数値型 → 文字列型にする関数 strval()関数
$int = intval($str);//$strを数値型にして$intに代入
$str = strval($int);//$intを文字列型に変えて$strに代入
count()関数 - 配列の中の数をカウントする関数
$abc = array(1,2,3);
echo count($abc);
chmod関数 (ファイル又は、フォルダのパーミッションを変更する
パーミッションを記述するときは「0755」のように頭に0をつけること!
$kakutyousi = 'jpeg';
$moveimg = "./../img/".time().'.'.$kakutyousi; //$moveimgはファイル名
chmod("./../img/" . $moveimg, 0644);//パーミッション変更
(./../img/ファイル名のパーミッションを0644に変更)
unset()関数 - 変数、セッション変数や配列の値を破棄する関数
unset($_SESSION['err_msg']);
var_dump()関数 - 主にデバッグの時に使用する関数
$fruit =array("りんご", "ぶどう", "みかん");
var_dump($fuit);
in_array()関数 - 配列の中に値があるかどうか調べる関数
$str = array('北海道','東京','大阪','沖縄');
$timei = '京都';
if(in_array($timei,$str)){
echo '京都は含まれています';
}else{
echo '京都は含まれていません';
}
str_split()関数 - 文字列を1文字(指定文字数)づつ分解して配列に格納
マルチバイトには、対応してません!
$str = 'abcd';
$bunkai = str_split($str);
echo $bunkai[0];
結果 a
str_split($str,2);とすると 2文字づつ分解します
array_search()関数 - 指定する配列キーが何番目にでてくるかを返す関数(0から始まる)
$str = 'amazon';
$bunkai = str_split($str); //1文字づつ分解して配列に格納
$soeji = array_search("m",$bunkai);//'ん'は $bunkaiの何番目に出現するか? 0から始まるので1が入る
echo $bunkai[$soeji];
結果 m
sort()関数 rsort()関数 - 配列の中の値を並び替える
$abc = array(3, 2, 1);
sort($abc);
print_r($abc);
mb_strimwidth()関数 - 文字を指定文字数で区切る
注 : マルチバイト関連の関数は必ず文字コードを指定すること
$str = mb_strimwidth($str, 0, 15, "...", 'UTF-8');
//上の場合15文字以上は...で表示される
//よくショッピングカートの長すぎる商品名に使われている
mb_conbert_kana()関数 - 全角文字を半角にする
mb_conbert_kana()関数 - 半角文字を全角にする
注 : マルチバイト関連の関数は必ず文字コードを指定すること
$str = 'バガボンド';
mb_convert_kana($str,KV,'UTF-8');
上の場合は バガボンドとなる
r 全角英字→半角英字
R 半角英字→全角英字
n 全角数字→半角数字
N 半角数字→全角数字
a 全角英数字→半角英数字
A 半角英数字→全角英数字
s 全角スペース→半角スペース
S 半角スペース→全角スペース
k 全角カタカナ→半角カタカナ
K 半角カタカナ→全角カタカナ
h 全角ひらがな→半角カタカナ
H 半角カタカナ→全角ひらがな
c 全角カタカナ→全角ひらがな
C 全角ひらがな→全角カタカナ
V KまたはHと一緒に使用し、濁点付きの半角文字を全角の1文字に変換
オプションによって使い分ける
number_format()関数 - 数字をカンマで区切る
$int = 1000000;
echo number_format($int);
結果 1,000,000
time()関数 - UNIXタイムスタンプを返す関数
(画像ファイルなどのファイル名付けなどに使うと便利)
echo time();
結果 1680431294
explode()関数 - 文字列を指定部分で分割し、配列に格納する
mb_language('ja');//念のため、一応いれておく
mb_internal_encoding('UTF-8');//念のため、一応いれておく
$str = 'ドラえもんとのび太とジャイアンとスネオ';
$cast = explode("と", $str);//"と"で分割し配列に入れた
echo $cast[1];
結果 のび太
例2
$word = 'りんご,みかん,もも,すいか,パイナップル,';
$newword = explode(',',$word);//カンマ区切りで分割した
echo $newword["0"];
結果 りんご
phpinfo()関数 - サーバーのPHP情報をみる
phpversion()関数 - サーバのPHPのバージョンを調べる
ini_get()関数 - サーバのPHP設定オプションの値を得る
gd_info()関数 - サーバのGDライブラリの情報を調べる
phpinfo();//サーバーのPHPの情報を得る
echo '現在のPHPのバージョンは'.phpvarsion();
echo ini_get('safe_mode') ? "セーフモードON" : "セーフモードOFF";
echo '文字コード = '.ini_get('default_charset');
echo '文字コード変換 = '.ini_get('mbstring.encoding_translation') ? "ON":"OFF";
echo 'インクルードパス = '.ini_get('include_path');
echo 'セッションセーブパス = '.ini_get('session.save_path');
var_dump(gd_info());//GDライブラリについての情報を調べる
サーバー環境変数 $_SERVERについての簡単なまとめ
$_SERVER['SERVER_NAME'] ← サーバー名
$_SERVER['SCRIPT_NAME'] ← 現在実行中のスクリプトのパス
$_SERVER["HTTP_REFERER"] ← どのページからきたのか?
$_SERVER["HTTP_USER_AGENT"] ← 使っているブラウザは?
$_SERVER["REMOTE_ADDR"] ← IPアドレス
ファイル書き込みの手順まとめ
$moji = '新しく書き込む文字列';
$fp = fopen($filename2,'ab'); //ファイルを開く
flock($fp,LOCK_EX); //開いているファイルにアクセスできないようロック
ftruncate($fp,0); //ファイルの内容をけしてポインタを先頭に移動
//↑コレがない場合は追記モードで書き込む(ファイルの内容を消さない)
fwrite ($fp,$moji); //ファイルに書き込み
fclose($fp); //ファイル閉じる
関数ではないけど長いSQL文とかにヒアドキュメントを使うと便利
注意事項1 : はじめのEOTの部分をシングルクウォートで囲むと変数が展開しません!
(PHPのバージョンが 5.3以上)
注意事項2 : 最後のEOTの部分の前に空白(スペース)があるとNG
注意事項3 : ヒアドキュメント内で変数を使いたい場合
変数を{$hensuu}という風にするとより変数であると解釈してくれます
$money = 50000;
$okodukai = number_format($money);
$name = 'たかお';
$koubutu = 'たこ焼き';
$str =<<< EOT//EOTは別になんでもいい 例えば ENDとかでもOK
はじめまして、私の名前は{$name}です
今月のおこづかいは{$okodukai}円でした
{$okodukai}円もあれば、大好物の「{$koubutu}」がいっぱい食べれます
EOT;
echo $str;
出力結果
はじめまして、私の名前はたかおです
今月のおこづかいは 50,000円でした
50,000円もあれば、大好物の「たこ焼き」がいっぱい食べれます
$をそのまま出力したい場合は \$ としてエスケープします