概要説明
PHP作業時に特定の文字列を含むかどうかの判定処理を実装する際に毎回調べて実装していることに気づきました。この機会に作業時にいつも忘れてしまって検索してしまっている処理をまとめてみました。
特定の文字列を含むかを判定 strpos() ( PHP )
php
/*---------------------------------------------------- 特定の文字列を含むかを判定 ----------------------------------------------------*/ if ( false !== strpos( $data, 'keyword') ) { // $dataにkeywordが含まれる場合 } else { // $dataにkeywordが含まれない場合 } /*---------------------------------------------------- 特定の文字列を含まないかを判定 ----------------------------------------------------*/ if ( false === strpos( $data, 'keyword') ) { // $dataにkeywordが含まれない場合 } else { // $dataにkeywordが含まれる場合 }
よく使うのに毎回検索していたことに気づきました。
URLから特定のページを strpos() ( PHP )
/*---------------------------------------------------- URLから特定のページを判定 ----------------------------------------------------*/ if ( isset($_SERVER['REQUEST_URI']) ) { if ( false !== strpos( $_SERVER['REQUEST_URI'], 'company') ) { // URLにcompanyが含まれる場合 } else { // URLにcompanyが含まれない場合 } }
ヒアドキュメント ( PHP )
php
/*---------------------------------------------------- ヒアドキュメント ----------------------------------------------------*/ $style = <<<EOD <style>sample</style> EOD;
改行コードを <br /> に変換 nl2br() ( PHP )
php
/*---------------------------------------------------- 改行コードを<br />タグに変換 ----------------------------------------------------*/ nl2br();
タグを無効にしたい時のエスケープ htmlspecialchars() ( PHP )
php
/*---------------------------------------------------- 簡易版タグエスケープ ----------------------------------------------------*/ htmlspecialchars();
& ( アンパサンド ) | & |
---|---|
" ( ダブルクォート ) | " |
' ( シングルクォート ) | ' |
< ( 小なり ) | < |
> ( 大なり ) | > |
リダイレクト ( PHP )
php
/*---------------------------------------------------- リダイレクト ----------------------------------------------------*/ header('Location: https://functions.fs-create.net'); exit();
IPアドレス判定 ( PHP )
php
/*---------------------------------------------------- IP判定 ----------------------------------------------------*/ if ($_SERVER["REMOTE_ADDR"] == 'xxx.xxx.xxx.xxx') { // 一致した場合の処理 }
ソース内の画像srcを一括取得 ( PHP )
php
/*---------------------------------------------------- 正規表現 imgタグ内のsrcを一括取得 ----------------------------------------------------*/ preg_match_all('/<img.*?src\s*=\s*[\"|\'](.*?)[\"|\'].*?>/i', $html, $matches); echo "<pre>"; var_dump($matches);
レスポンシブレイアウト media ( CSS )
css
/*---------------------------------------------------- 1024pxより横幅が小さくなった時の処理 ----------------------------------------------------*/ @media only screen and (max-width:1024px) { // css }
ファイルに情報を追記する file_input_contents ( PHP )
php
/*---------------------------------------------------- $file に情報を追記する ----------------------------------------------------*/ file_put_contents($file, $data, FILE_APPEND | LOCK_EX);
WordPress debug.log に任意の内容を出力 ( WordPress )
php
/*---------------------------------------------------- WordPressでdebug.logに任意のログを追加 ----------------------------------------------------*/ error_log( 'Log: ' . $data );
WordPress debug.log に配列やオブジェクトを出力する場合
php
// 配列やオブジェクトを確認したい場合 $log_data = 'not defined'; if ( isset($check_data) ) { if ( !empty($check_data) ) { ob_start(); var_dump( $check_data ); $log_data = ob_get_contents(); ob_end_clean(); } } error_log( 'Chceck Log: ' . $log_data );
出力をバッファリングして内容を変数に代入 ( PHP )
php
/*---------------------------------------------------- 出力をバッファリングして内容を変数に代入 ----------------------------------------------------*/ ob_start(); echo "test"; $str = ob_get_contents(); ob_end_clean();
文字列の先頭0を削除する ( PHP )
php
/*---------------------------------------------------- 文字列の先頭0を削除する ----------------------------------------------------*/ $number = abs($data);
先頭に0をつける ゼロ埋め ( php )
php
sprintf('%02d', $number);
長いテキストの省略 ( タグ除去 )
php
mb_strimwidth( strip_tags( get_the_title() ), 0, 50, '...' );
昨日の日付を取得 ( PHP )
php
date('Y-m-d', strtotime('2024-04-01 -1 day'));
画像の遅延読み込み ( html )
html
<img loading="lazy" src="image.jpg" alt="..." />