- 1. paygent決済システム導入(PHP編1)
- 2. 【個人開発】ネットで調べ物するたびに、タイトルとアドレスをメモれるツールを作って10年以上使っている話
- 3. PHPでFizzBuzz
- 4. WordPressでカスタム投稿の新着順にユーザー一覧を作成する
- 5. 【初心者向け】バリデーションについて〜Laravel〜
- 6. composer require -w tymon/jwt-authがエラー
- 7. 【MAMP】PHPのPath設定(.zprofile)
- 8. Cookie にSession 情報保存されない?そう、デフォの api.php ならね。
- 9. Logファイルの権限エラーの解決方法(Laravel)
- 10. 【Laravel8】scheduleで実行する時だけ、DBにアクセスしようとするとConnection refusedが発生する
- 11. シングルトンパターンの使い所を学ぶ
- 12. Vue + Laravelでformの入力情報をパラメーターから受け取り、復元する方法
- 13. Livewire アカウント作成後のリダイレクト先変更
- 14. Laravelで愛犬のお世話記録アプリを作るまで(3)【DB設計】
- 15. 【PHPの基本】関数とは
- 16. PHPのスコープ
- 17. 【実務で使えるLaravel】プルダウンをスマートに作成しよう
- 18. Composerのインストール方法【macOS編】
- 19. 【初学者向け】まとめておさえるPHPの基本
- 20. システムのPHPを5系から7系へバージョンアップする際に修正が必要な関数メモ
paygent決済システム導入(PHP編1)
#趣向
PHPでpaygent決済システム導入を導入機会が
あったためゆらりと述べていこうと思います。#環境
PHP: 7.0.3
※PHP7系なら大丈夫です。#はじめに
このページではpaygentのモジュールの動作確認が完了するまで説明します。#1.試験環境接続キットを入手する
![スクリーンショット 2021-08-30 10.22.27.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/843952/fb378fc0-7754-e960-0102-dde69e5d550e.png)
![スクリーンショット 2021-08-30 10.24.16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/843952/7cb2c450-a6d0-54d2-ffcf-820aa0bfc528.png)
まずは画像の通り、試験環境ボタンを押下し、自身の試験環境を設定します。
設定したら3日程度で試験環境接続キッド.zipを
【個人開発】ネットで調べ物するたびに、タイトルとアドレスをメモれるツールを作って10年以上使っている話
たいした技術力はないのですが、個人開発の簡単なサンプルとして紹介したいと思います。
## Webコピ太郎とは
[Webコピ太郎](https://www.catch.jp/program/copy-taro/)は、いま見ているWebページのタイトルとアドレスを取り出すだけのツールです。
1. メモっておきたいWebページを見ているとき、このツールを呼びだす
2. ページのタイトルとアドレスを取り出して、テキストボックスに表示
3. クリップボードにコピー![copy-taro.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/86880/cb0eae92-8887-d3eb-5a05-92abc890bf19.png)
## なぜ、こんなツールを作ったのか
ネットで調べ物をする度に、役立ちそうなページのアドレスとタイトルをコピペして、テキストファイルにメモするなんてありませんか?
たくさんの参考ページをメモろうとすると、何度もタイトルとアドレスをコピーするのでたいへん面倒くさい。
でも、メ
PHPでFizzBuzz
###概要
FizzBuzz問題を解く機会があったので、PHPで書いてみました。## ルール
1〜100までで
3で割り切れる時は、「Fizz」を表示。
5で割り切れる時は、「Buzz」を表示。
3と5で割り切れる時は、「FizzBuzz」を表示。
その他は、数字を表示する。## コード
“`index.php
“`
## 結果
“`
1
2
Fizz
4
Buzz
Fizz
7
8
Fizz
Buzz
11
Fizz
13
14
FizzBuzz
16
17
Fizz
19
WordPressでカスタム投稿の新着順にユーザー一覧を作成する
`get_users`を使えば、ユーザーの一覧を取得できます。
[関数リファレンス/get users
](https://wpdocs.osdn.jp/%E9%96%A2%E6%95%B0%E3%83%AA%E3%83%95%E3%82%A1%E3%83%AC%E3%83%B3%E3%82%B9/get_users)ユーザーID、登録日でソートすることはできけど、カスタム投稿の新着順にソートするできないみたい。
検索してみても、同じようなことをしてるサイトが見つからなかったけど、やってみたらできたので、それのメモ。
## 完成形
まずは完成形を。
“`
‘ID’,
‘order’ => ‘ASC’,
];
$users = get_users($args);foreach ($users as $user){
$uid = $user->ID;
$usernicename = $user->use
【初心者向け】バリデーションについて〜Laravel〜
今回は、バリデーションの概要と設定方法、エラーメッセージの表示方法について説明します。
#バリデーションとは
バリデーションとは、ユーザーが入力した情報がその仕様や文法などに照らして適切な形式で記述されているかをチェックするための仕組みです。
たとえば、数字で入力してもらいたい年齢欄に名前を漢字で入力されたらサービスの提供を適切に行えなくなってしまいますよね。
それを防ぐためにバリデーションを利用します。#バリデーションの設定方法
コントローラーのアクション内に以下のように記述すれば、バリデーションを設定することができます。“`php:〇〇Controller.php
$rules([
‘連想キー(カラム名)’ => ‘バリデーションルール’,
]);
$this->validate($request, $rules);
“`複数のバリデーションルールを設定したいときは、「|」を使って繋げて記述します(例:’required | max:500’)。
バリデーションは、送信された情報が要求した形式に合致していなかったらフォーム画面が再表示される仕様になっている
composer require -w tymon/jwt-authがエラー
#趣向
composer require -w tymon/jwt-auth を使用するとエラーが出てしまい
jwt-authをインストールすることができなかった。
Laravel: 8.40
PHP: 8.0#エラー
下記のエラーがでてしまう。“`
Your requirements could not be resolved to an installable set of packages.Problem 1
– Root composer.json requires tymon/jwt-auth ^0.5.12 -> satisfiable by tymon/jwt-auth[0.5.12].
– tymon/jwt-auth 0.5.12 requires illuminate/support ~5.0 -> found illuminate/support[v5.0.0, …, 5.8.x-dev] but these were not loaded, likely because it conflicts with another r
【MAMP】PHPのPath設定(.zprofile)
まず、ルートディレクトリに移動します。
“$ cd“
下記を記述してパスを通します。
php7.3.27の部分は、自分の使っているMAMPのPHPのバージョンに変更して下さい。
“$ export PATH=/Applications/MAMP/bin/php/php7.3.27/bin:$PATH“最後に、下記コマンドを打ち込み設定を反映を反映させます。
“$ source ~/.zprofile“PHPのバージョン変更が反映されているか確認してみましょう。
“$ php -v“
Cookie にSession 情報保存されない?そう、デフォの api.php ならね。
#はじめに
Laravel 6で開発してて詰まったことあったので備忘録で残しておきます。
# やりたかったこと
## Session 情報をcookie に保存したかった。
下記のようなコードを書いた。
“`php:api.php
Route::post(“set_token”, “Controller@setToken”);
Route::get(“fetch_token”, “Controller@getToken”);
“`“`php:Controller
public function setToken(Request $request){
session()->put(‘token’, $token);
}public function getToken(){
$token = session()->get(‘token’);
return response()->json([‘token’ => $token]);
}
“`シンプルなセッション情報の保存と、別リクエストでのその情報の利用です。
でもな
Logファイルの権限エラーの解決方法(Laravel)
プログラミング初心者です
##環境
Laravel 5.8
PHP 7.3.29
AWS EC2 にてデプロイ##問題
データ処理送信を行う際、loggerメソッドでlogを記載しようとしたが、当日のLogファイルのPermision Deniedつまり権限エラーが出てしまいました。
“`$ php artisan“`実行時も同様のエラーが出ました。
以下エラー例文です。“`
UnexpectedValueException : The stream or file
“/test/laravel/storage/logs/laravel-2021-01-01.log” could not be opened: failed
to open stream: Permission denied
“`##やってみたこと
ターミナルで以下を入力します。
storageディレクトリの権限を777に変更します。
chmodの権限について[こちら](https://qiita.com/ntkgcj/items/6450e25c5564ccaa1b95)の記事が詳しいです。
【Laravel8】scheduleで実行する時だけ、DBにアクセスしようとするとConnection refusedが発生する
# 背景
ローカルにLaravel+Dockerの開発環境を作ってWEBアプリを開発をしており、定期的にDBに保存したデータを元にして外部サービスのAPIを叩き情報を取得する必要があった為、コマンドスケジューラで取得処理を実装してたところ、DBに接続できないエラーが発生してかなり詰まってしまい、(~~探し方の問題なのか詰まるほどでもない初歩的な問題だからか~~)関連する記事や解決方法を見つけるのに苦労したので備忘録として残したくてまとめました。# 開発環境
PHP 7.4.12
Laravel 8.12
Docker 20.10.5
Docker Compose 1.28.5# 起きたこと
やりたいことはめちゃくちゃシンプルで、DBから外部サービスのAPIを叩くのに必要な情報を取得して、APIから返された結果をDBに保存する処理をコマンドとして登録し、そのコマンドをスケジューラで定期的に叩くというもの。起きたことを分かりやすくする為に不要な記述を極力省いてますので、ツッコミ所が多いかもですがご了承頂けると幸いです。まずは公式ドキュメントを参考にArtisanコマンドを作成
シングルトンパターンの使い所を学ぶ
# シングルトンパターンの使い所を学ぶ
デザインパターンの1種として「シングルトンパターン」というものがある.
シングルトンパターンとは,「インスタンスが1個しか生成されないことを保証する」ことを指す.具体的にコード例を挙げてみる.
“`php
class Singleton {
// インスタンス化されているか判断されているかに使用するメンバ変数
private static $instance;// コンストラクタをprivateにして外部からアクセスできないようにする
private function __construct(){
echo “インスタンスを生成したよ”;
}// すでに自クラスがインスタンス化されているかを判断する
public static function getInstance() {
if ( !isset(self::$instance) ) {
self::$instance = new Singleton();
Vue + Laravelでformの入力情報をパラメーターから受け取り、復元する方法
#はじめに
一週間前から初めて触るVue + Laravelの環境で新規案件を開発しはじめました。
入力フォームの情報を確認画面に渡し、入力ミスなどで入力フォームに戻る際に、Laravelでフォームの情報を受け渡ししようかと奮闘しましたができず、結局Javascriptの力技で解決しました。。。多分
本来のやり方ではないと思いますが、良かったら参考にしてください。# 環境
– バックエンド:PHP – Laravel8
– フロントエンド:Vue.js
– DB:Mysql ver8.0
– Docker使用# 最初にやろうとしたこと
新規入力フォーム“`vuejs:userCreate.vue
Livewire アカウント作成後のリダイレクト先変更
##はじめに
今回は、Laravel8でアカウント作成後のリダイレクト先を変更する方法についてご紹介します!
また、ログイン後のリダイレクト先変更については、こちらの記事で紹介していますので是非参考にしてください。
https://qiita.com/yyy752/items/60511e1ef799f9943ee7##リダイレクト先変更
1.RegisterResponseを新規作成。“`php
/app/Http/Responses/RegisterResponse.php
Laravelで愛犬のお世話記録アプリを作るまで(3)【DB設計】
# はじめに
我が家の愛犬の世話は、家族で分担しています。
家族間で情報を共有し、愛犬の体調管理をスムーズにするために、散歩や餌の時間・量、排泄の回数などの記録(以下、お世話記録とする)を手軽に行えるアプリを作りたいと思います。# バックナンバー
[(1)【構想】](https://qiita.com/ddrpg2ki/items/394888946e2bd6fbbdab)
[(2)【開発環境】](https://qiita.com/ddrpg2ki/items/c3bcf9d7f8482553f8c0)
(3)【DB設計】 < **今回はここ**# DB設計
どんなテーブルのデータベースが必要なのか考えていきます。
最終的にはグループウェアのように、複数人で一匹のペットに関する記録を投稿できるようにしたいですが、処理が複雑になりそうなので、まずは一人で使う前提です。## テーブル1:users
| カラム名 | 内容 | カラムタイプ | 備考 |
|:—|:—|:—|:—|
| id | ユーザID | bigint(20) unsigned
【PHPの基本】関数とは
#はじめに#
今回はPHPの関数について見ていきたいと思います。
我々初学者が最初につまづくポイントの一つでもあると思うので、自分なりにまとめて、しっかり定着させていきたいと思います。#関数とは#
PHPでは下記のように書きます。“`php:sample.php
function addition($x,$y)
{
$sum = $x + $y;
return $sum;
}echo addition(2, 5);
“`functionとすることで**関数**が定義されます。()内には**引数**、{}内に処理を書き、returnは**戻り値(または返り値)**を示しています。そしてその関数を使いたい場面で実行します。実行する際は上記のように関数名(引数)とすることで実行できます。ちなみに引数は必要ないこともありますので必要に応じて使っていきましょう。
用語について、一つずつ見ていきましょう。
関数:処理をひとまとめにして好きな場所で使いまわせるようにしたもののこと。
引数:関数内で使われる値のこと。
戻り値(返り値):関数の結果のこと
PHPのスコープ
PHPでグローバルスコープ、ローカルスコープを学習したので忘れないように備忘録として残していきます。
##グローバルスコープ
開発環境の全てに影響を及ぼす変数(スコープ外の変数)“`php
$globalScope = ‘グローバルな変数です’;function localScope()
{
$localScope = ‘ローカルな変数です’;
echo $localScope;
}echo $globalScope;
“``echo $globalScope;`で「グローバルな変数です」と表示されます。
グローバル変数を関数内で直接は使用することはできません。
関数内で直接使用するには関数内で“`php
function localScope()
{
global $globalScope;
$localScope = ‘ローカルな変数です’;
echo $localScope;
}
localScope();
“`関数内の$globalScopeの前に`global`をつけることで関数の中で記述した変数を呼ぶことができ
【実務で使えるLaravel】プルダウンをスマートに作成しよう
Laravelの実務で使えるスマートなプルダウンを紹介していきます。
#開発環境
Docker 20.10.7
PHP 7.4.22
Laravel 8.53.1
mySQL 5.7
データベースのツール phpmyadmin#想定するもの
本を管理するアプリを想定しており、「カテゴリーのプルダウンを作成してほしい」という依頼がきたとします。プルダウンは以下を想定
![スクリーンショット 2021-08-26 22.35.43.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1693248/fce1bcaa-4dae-3e73-8fd1-1ad28288ab31.png)
![スクリーンショット 2021-08-26 22.36.01.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1693248/623fb7fc-e800-b347-90df-98a9ff02fb6d.png)#初心者が書きがちなプルダウンの
Composerのインストール方法【macOS編】
#はじめに
Composerとは、PHPを利用するためのパッケージ管理ツールです。
Laravelでアプリを作る前にインストールしておく必要があるので、今回はComposerのインストール方法について説明します。#Composerのインストール方法
基本的には、公式ホームページに載っているマニュアルどおりなのですが1) 以下の公式ホームページにアクセスします。
公式ホームページ→ [Composer](https://getcomposer.org/)
2) 「Download」をクリックします。
3) 3行目くらいにある以下のコマンドをターミナルで実行することで、composer.pharというファイルが作成されます。“`PHP:PHP
php -r “copy(‘https://getcomposer.org/installer’, ‘composer-setup.php’);”
php -r “if (hash_file(‘sha384’, ‘composer-setup.php’) === ‘756890a4488ce9024fc62c56153228907f1
【初学者向け】まとめておさえるPHPの基本
#はじめに#
PHPとは、サーバーサイド言語と呼ばれるものの一つで、ブラウザ上ではなくサーバーサイドで動き、さまざまな動的なWebページの生成やデータベースの処理などをやってくれます。動的なWebページとは、ページにアクセスした時の状況によって異なる内容が返されるWebページのことです。例えば、ログインが必要なSNSやショッピングサイトなどは人によって違う内容のページが表示されます。
ちなみに静的なWebページとは、いつ誰が見ても同じ内容のページが表示されます。例えば企業のホームページなどです。
PHPはデータベースからデータを取ってきて、状況に応じて異なるHTMLを生成するための言語になります。
今回はそんなPHP(というよりプログラミング言語全般)を使うための最も基本的な2つの機能、「繰り返し」と「条件分岐」についてご紹介していきたいと思います。#繰り返し#
繰り返しには「for」「while」「foreach」の3種類があります。##for文##
“`php:for.php
for($i = 1; $i <= 10; $i++) {
システムのPHPを5系から7系へバージョンアップする際に修正が必要な関数メモ
システムのPHPを5系から7系へバージョンアップする際に修正が必要な関数をメモ。
“`.php
ereg()
eregi()
ereg_replace()
mysql_affected_rows()
mysql_error()
mysql_fetch_assoc()
mysql_free_result()
mysql_real_escape_string()
mysql_fetch_row()
mysql_fetch_array()
mysql_num_rows()
mysql_query()
mysql_insert_id()
mysql_connect()
mysql_select_db()
session_register()
session_unregister()
split()
“`