- 1. WordPressで検証用関数を用意する
- 2. 独自ヘルパ関数追加で階層のあるsessionを作ってみた。
- 3. PHPからDBにデータを挿入する方法
- 4. 三項演算子
- 5. 【Laravel】マルチログインで認証ミドルウェアのリダイレクト先をGuard(認証)別で指定する
- 6. 配列に新たな要素を追加する方法(PHP)
- 7. RubyとPHPの比較(クラス、インスタンス、継承、オーバーライド)
- 8. PHPでSQLのSELECTを使用する方法
- 9. query構文を用いてPHPでSQL操作(テーブル作成と削除、SQLエラーの表示)
- 10. MAMPにおけるMySQLiを用いたDB接続(PHP)
- 11. PHP 変数展開 文の中に変数を入れ込む
- 12. PHPの配列のkeyをスネーク⇔キャメル変換する関数を作ってみた
- 13. PHP + MySQLフルスクラッチでユーザー認証機能を実装する【マイページ・パスワード変更機能編】
- 14. MAMPで500エラーが出た時の対処について
- 15. VirtualBoxにCentOS7を入れてApache、MySQL、PHPのインストール作業を行う(LAMP)
- 16. Laravelで複数入力のvalidation時にエラーメッセージをいい感じにする
- 17. 【Laravel】バリデーションのアクションを指定する
- 18. 【個人開発】独学駆け出しエンジニアが花の譲り渡しを仲介するサービスを作ったよ!
- 19. Amazon Linux 2 に PHP8.1 を導入する
- 20. [php]Bitbank認証ありのAPIに接続しデータを取得!
WordPressで検証用関数を用意する
## はじめに
Web制作会社のエムハンドでエンジニアをしてる@yadon_yadon_yadon_don_donです:v:
エムハンドのWordPressサイトの制作ですが、
WordPressテンプレートテーマをカスタマイズして、独自テーマを作成。
それをクライアントに納品しています。その際、いろいろと問題になるのがエラーが出た際の検証です。
おそらくよく使うのが、`error_log()`や`print_r()`、`var_dump()`あたりでしょうか?
`error_log()`はログを確認しに行くのが面倒、`print_r()`、`var_dump()`はすぐに確認できるが、検証後消し忘れてしまうかもしれないと何か面倒です。そこで、**ステージング環境でのみブラウザの検証ツールで確認できる検証用関数**を作成しました。
ソースコピペで(多分)大丈夫です:writing_hand:
WordPressテーマ開発向けになるのでしょうか:thinking:## 使用方法
### 関数の要件
やろうとしていることは、下記です。
1. phpのコードをjavascript
独自ヘルパ関数追加で階層のあるsessionを作ってみた。
# これは何?
Laravelは独自ヘルパ関数を作れます。
https://readouble.com/laravel/7.x/ja/helpers.html
今回は、独自ヘルパ関数で、sessionをラップした形のものを作り、
階層つきsessionを作成しました。# どういうとき使うの?
id付きのページ
“`/hoge/{id}“`
にアクセスし、これを起点にsessionを保ちながらアクセスせざるを得ない場合使います。例えば、
“`
/hoge/10
↓
/fuga
↓
/piyo
“`
の遷移“`
/hoge/20
↓
/fuga
↓
/piyo
“`
の遷移があるとします。
もし、sessionの値をそれぞれ、
“`/fuga“`や“`/piyo“`
と何かしら使うとしたらどうでしょうか?今回は下記のようなケースを想定しました。
“`
/hoge/10
↓
/fuga
↓
ここで別タブで
/hoge/20
↓
/fuga
↓
ここで元のタブに戻り
/fuga
↓
/piyo
“`
ここのpiyoのsessionの値は10関
PHPからDBにデータを挿入する方法
・PHPからDBにデータを挿入する方法
~はじめに~
`insert into`でデータを挿入することが可能だが、いたずらされる可能性がある。
そのため、以下の方法でデータを挿入する方が良い。~推奨方法~
`prepare`、`bind_param`、`execute`を使う。
例)挿入するデータ(カラムの種類)が1つの時
“`
prepare(“insert into data(memo) values(?)”);
if (!$statement) {
die($db->error);
}
$statement->bind_param(“s”, $input);
$return = $statement->execute();
if ($return) {
echo “データを挿入しました”;
} else {
echo $db->error;
}
?>
`
三項演算子
## 使用用途
– if文に似たようなもので、条件式がTRUEの場合に真の式を返し、FALSEの時は偽の式を返す。
– if文よりもコンパクトに見える。:::note warn
注意
if文とは異なり、演算子なので結果として式を返す。
if文のように条件に応じた処理を記述するものではない。
多用すると可読性が低下する。
:::## 使い方
“` php:三項演算子
条件式 ? 真の式 : 偽の式
“`“` php:例
$value2 ? “value1はvalue2より大きい” : “value1はvalue2より小さい”;
?>
“`?の前が条件。
その次がTRUEの際の式。
その次がFALSEの際の式。例文の場合、条件式がTRUEであれば、「value1はvalue2より大きい」が返る。条件式がFALSEであれば、「value1はvalue2より小さい」が返る。
### この式をif文で書いた場合
“` php:if文で書いた場合
$value2) {
echo “val
【Laravel】マルチログインで認証ミドルウェアのリダイレクト先をGuard(認証)別で指定する
# 環境
– PHP 8.0.3
– Laravel 8.79.0
# 今回実現したい事
– ルーティングで`middleware auth:〇〇`を使ってログインしていないユーザはGuard(認証)別のログインページにリダイレクトしたい
– `redirectTo`をオーバーライドしただけではGurardが分からないためGuard別のリダイレクトが出来ない
# 結論
Authenticateクラスの`unauthenticated`をオーバーライドして`redirectTo`メソッドの第二引数に$guardsを追加して使う。下記のようにすることで`redirectTo`でguardが分かるようになる。“`php:Authenticate.php
use Illuminate\Auth\Middleware\Authenticate as Middleware;
use Illuminate\Auth\AuthenticationException;class Authenticate extends Middleware
{
protected function u
配列に新たな要素を追加する方法(PHP)
# 配列に新たな要素を追加する方法(PHP)
この記事ではPHPで配列を使う際、
* 配列の先頭に要素を追加する方法
* 配列の最後に要素を追加する方法
* 配列の適当な位置に要素を追加する方法の参考になればと思います。
## 配列の先頭に要素を追加する方法
こちらが配列の先頭に要素を追加する方法です。
* array_unshift()
### array_unshift()
array_unshift関数はphpのビルトイン関数で、
array_unshift(配列名, 追加したい要素)
で、配列の先頭に要素を追加することができます。“`php:sample.php
$samples = [2, 3, 4];
array_unshift($samples, 1);
print_r($samples);//出力結果
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
)“`
複数の要素を追加したい場合は、
array_unshift(配列名, 追加したい要素1, 追加したい要素2, 追加し
RubyとPHPの比較(クラス、インスタンス、継承、オーバーライド)
# この記事の概要
Rubyで学習を始めてPHPに言語チェンジをする人が一定数いるみたいなので
そういった人達が参考にするための記事です。これらの記事の続きです。
https://qiita.com/Hashimoto-Noriaki/items/82beae9d3d6dac11e11c
https://qiita.com/Hashimoto-Noriaki/items/449c00327e99574e430a
https://qiita.com/Hashimoto-Noriaki/items/96eadd7076675fe19dc9# クラス
⚫︎“`Ruby“`
“`rb
class Dog
def initialize(name,kind,weight)
@name = name
@kind = kind
@weight = weight
enddef feed(eat)
@weight += 1
puts “重さ:#{@weight}kg
PHPでSQLのSELECTを使用する方法
・PHPでSQLのSELECTを使用する方法
①query構文でSELECT
②whileとfetch_assocで各レコード毎に操作画像の通り、dataというテーブルがあったとする
例)
“`
query(“select * from data”);
if ($records) {
while ($record = $records->fetch_assoc()) {
echo $record[‘name’] . “
“;
}
} else {
echo $db->error;
}
?>“`
補足画像)
手順2
例)
“`
PHP 変数展開 文の中に変数を入れ込む
## 使用用途
– PHPで文の中に変数の値を出力したい際に使う## 変数展開
“` php:変数展開のコード
PHPの配列のkeyをスネーク⇔キャメル変換する関数を作ってみた
# コピペ用関数
“`functions.php
//キャメル→スネーク変換
function convertStringIntoSnakeCase(string $string): string
{
return ltrim(strtolower(preg_replace(‘/[A-Z]/’, ‘_\0’, $string)), ‘_’);
}//配列のkeyを全てキャメル→スネーク変換
function convertArrayKeyNamesIntoSnakeCase($array): array
{
$snakelized_array = [];
foreach ($array as $key => $value) {
if (
is_array($value) === true ||
is_object($value) === true
) {
if (is_numeric($value) === true) {
PHP + MySQLフルスクラッチでユーザー認証機能を実装する【マイページ・パスワード変更機能編】
PHP + MySQLフルスクラッチでのユーザー認証機能の実装方法を解説します。今回は【マイページ・パスワード変更機能編】です。
開発環境、ファイル構成、ER図はこちらからご確認ください。https://qiita.com/Michi1090/items/67db6a38bb63752237e7
# 要件定義
### マイページ
– ログイン中のユーザー名を表示
– インデックスページ、パスワード変更画面、ユーザー登録削除画面へのリンクを設置### パスワード変更画面
– ユーザーからは、現在のパスワード、新しいパスワード、新しいパスワード(確認用)の3つを入力させる
– パスワードは半角英数字8文字以上で英大文字、英子文字、数字を最低1個以上含む
– パスワード変更完了後、マイページへリダイレクト# マイページ (my_page.php)
“`my_page.php
関連する記事
OTHERカテゴリの最新記事
-
- 2023.09.23
iOS関連のことを調べてみた2023年09月23日
-
- 2023.09.23
Python関連のことを調べてみた2023年09月23日
-
- 2023.09.23
Ruby関連のことを調べてみた2023年09月23日
-
- 2023.09.23
Rails関連のことを調べてみた2023年09月23日
-
- 2023.09.23
Python3関連のことを調べてみた2023年09月23日
-
- 2023.09.23
PHP関連のことを調べてみた2023年09月23日