たけるのプログラミング

作ったものとか、気ままにアップします。

【Laravel】中間テーブルを触ってみる【追加・削除・同期】

超参考にしたドキュメントサイト Eloquent:リレーション 8.x Laravel 例えばplayerとteamの関係について1人のplayerは過去現在含めて複数のteamに所属して(いました)います。 1つのteamは過去現在含めて複数のplayerが所属して(いました)います。つまりplaye…

【PHP】require_once関数でエラーになった件

↑tatum.phpはCelticsフォルダの中にあります。 上記ような構成のアプリケーションがあり、実行ファイルをindex.phpとする。それぞれのコードの内容index.php lebron.php 上記コードでindex.phpを実行するとエラーとなる。 エラーとなる原因はrequire_…

【JavaScript】Asyncとawaitを試す【殴り書き】

Async 関数の前にasyncを付けることによってpromiseを返すようになる。例えばreturn 'hello'とすると async function hello() { return 1; } console.log(hello()); 実行結果 return がある場合、JavaScript は自動的にその値を持つ 解決された promise にラ…

【JavaScript】非同期処理 Promise,thenについて色々試す【殴り書き】

前に以下のような記事を書いたことがありましたが、 【JavaScript】Promiseのthenメソッドの挙動について ちょっとした確認 - たけるのプログラミングまた非同期処理を実装する機会があったので、復習がてら色々なコードを試していけたらと思います。そもそ…

【PHP PHPUnit】PHPUnitを使って簡単な単体テストを行う

参考にした記事 PHPUnitでユニットテスト① 導入編 | Points & Lines 1. アサーション — PHPUnit latest Manual PHPUnitを触ってみた。PHPUnitは単体テスト(ユニットテスト)を行うためのフレームワーク。実際に導入から簡単なテストを行ってみた。composerが…

【JavaScript】プロトタイプについて【継承 プロトタイプチェーン】

この記事はJavaScriptの経験が浅い人が書いています。 間違っている点等ございましたら、ご指摘いただけると幸いです。参考にした記事 【JavaScript】 プロトタイプとは?prototypeプロパティはプロトタイプではない件について JavaScriptのプロトタイプから…

【JavaScript】Promiseのthenメソッドの挙動について ちょっとした確認

この記事はJavaScript経験浅く、Promise勉強したての人が書いています。 間違い等ございましたら、指摘やアドバイス等いただけると嬉しいです。 thenメソッドはPromiseオブジェクトを返す。なのでチェーンすることが可能です。例えばサーバーからfetchメソッ…

内定者ポータルサイトのメール通知機能が機能してなかったから、LINEに通知できるシステムを作った。

タイトル通り内定先のポータルサイトのメール通知機能が機能してなかった。なので人事の方からのメッセージが来ているかいちいちログインして確認しなくては行けなかった。結構めんどくさい。なのでサイトが更新(新着メッセージが来たら)されたらLINEに通知…

【laravel】modelクラスのドキュメントにwhereメソッドないけど何で?

よくこんなコードを参考書やネットで見かける。 $items = Tweet::where('name','=','レブロンジェームス')->get();ここでTweetモデルはIlluminate/Database/Eloquent/Modelを継承してるから、Modelのドキュメントにwhereメソッドについて載ってると考えた。…

【SQL】内部結合と外部結合について簡単な説明

※たぶん徐々に追記していきます。 今回のサンプルテーブルmembersテーブル id name team_id 1 レブロンジェームス 1 2 クリスポール 2 3 デビンブッカー 2 4 カールアンソニータウンズ 3 5 デマーデローザン 4 teamsテーブル id name 1 レイカーズ 2 サンズ …

【PHP】正規表現を学ぶ【その1】

Linuxを勉強してたら正規表現の知識が乏しかったので勉強する。正規表現をざっとまとめた。 引用参照url 正規表現 | 任意の一文字にマッチする:ドット(.) 正規表現 | いずれか一文字にマッチする:角括弧([...]) 正規表現 | バックスラッシュ(\)+文字を使っ…

【PHP】N+1問題をLaravel Debugbarを使って検証してみる【Laravel】

N+1問題とは 【Ruby on Rails】N+1問題ってなんだ? - Qiita ループ処理の中で都度SQLを発行してしまい、大量のSQLが発行されてパフォーマンスが低下してしまう問題のこと。 1回のクエリ発行でN件のレコードを取得し、それぞれN件のレコードが持っているリレ…

【PHP】issetとemptyについてのメモメモ♪

いつも感覚的に使っちゃてたissetとemptyについてドキュメントやQiitaを見ながら再確認。 isset https://www.php.net/manual/ja/function.isset.php 変数が宣言されており、かつ その値がnullではない →true そうでない場合 →false empty ※ !isset($x) || $x…

【PHP】オートロードとクラスインポート

PHPのオートロード(autoload) - Qiita 【PHP】Composerを使用してクラスのオートロードを行う | Points & Lines 【PHP超入門】名前空間(namespace・use)について - Qiita laravel使ってると何でuseだけでクラスが使えるようになるの?結論autoload(オート…

【PHP】名前空間とエイリアスについて再確認の巻

参考 【PHP超入門】名前空間(namespace・use)について - Qiita PHP: 名前空間 - Manual 以下のようなコードだとエラーが起きるtry.php

【PHP】ファイル操作そんなに勉強したことなかったので、基本を勉強する

ここでのファイルポインタとは ファイルを操作するための変数 ファイルを編集するための現在位置 fopen PHP: fopen - Manual ファイルまたはurlを開く。返り値はファイルポインタを返す。失敗した場合はfalseを返す。 fclose PHP: fclose - Manual ファイル…

【PHP】クッキーとセッション勉強会

クッキー(cookie)とは Webブラウザにデータを保存するためのファイルのこと、Webブラウザに保存されるデータのこと セッション ユーザーが行う一連の操作のこと 例えば ログイン-> ............ ->ログアウト の流れ 使われる場面 よくある例えだが、ショッ…

【PHP】データベース周りをフレームワークに頼りすぎていたのでPDOについてもう一度復習する【その1】

optionなど詳しい仕様はドキュメントを参照 PHP: PDO - Manual PHP: PDOStatement - Manual PDOオブジェクトを生成する PHP: PDO::__construct - Manual

【日能研 個人情報流出】SQLインジェクションについて解説

最近よくフィッシングメールといったいわゆるサイバー犯罪が増えてきました。そして最近話題になったのが日能研がSQLインジェクションの被害にあり、個人情報を28万件流出させてしまった事件。 www2.nichinoken.co.jp xtech.nikkei.com SQLインジェクション…

【Laravel】Modelのリレーション1人勉強会①【PHP】

ER図は以下のツールを使いました。とても便利でした。無料です。 Flowchart Maker & Online Diagram Software 1対1のリレーション hasOne() イメージはこんな感じ Tweet_userモデルでTweet_contentを用意する public function Tweet_content() { return $t…

【Laravel】ファイルアップロード1人勉強会【PHP】

readouble.com を参考にした。まずpublic/storage と storage/app/public 間においてシンボリックリンクを貼るために以下のArtisanコマンドを実行しておく。 php artisan storage:link 以下のような画像をアップロードするbladeを用意する。 <form action="/upload" enctype="multipart/form-data" method="post"> @csrf <input type="file" name="img"> <input type="submit" value="アップロードする"> …</form>

【Laravel】Modelクラスを利用したCRUD処理1人勉強会【PHP】

Modelについて LaravelのEloquentというORMの仕組みにより、データベーステーブルに関連するモデルを作り、オブジェクトを操作する感覚でDB操作することができる。今回はModelクラス(https://laravel.com/api/6.x/Illuminate/Database/Eloquent/Model.html#m…

【Laravel】ミドルウェア1人勉強会_その2【PHP】

takeru232423.hatenablog.com readouble.com 前回の記事ではBeforeのミドルウェアについて書いたので、今回はAfterのミドルウェアについて書く。Afterのミドルウェアは、コントローラの後に実行される。つまりクライアント(ブラウザ)に返されるレスポンスを…

【Laravel】ミドルウェア1人勉強会_その1【PHP】

readouble.comによるとミドルウェアは アプリケーションへ送信されたHTTPリクエストをフィルタリングするものである。 このミドルウェアはapp/Http/Middlewareディレクトリに設置される。 基本的にアプリの流れは以下の通り クライアント(ブラウザ)がリクエ…

【Laravel】ビューコンポーザ1人勉強会【PHP】

php

readouble.com個人的にLaravelのビューコンポーザについて以下のように理解しました。 ビューコンポーザは、全てのページまたは複数のビューで使うような変数をまとめてビューコンポーザに書いておくものである。 アクセスしたページがレンダリングされる際…

【PHP】PHPとIFTTTを使って簡単にLINEしてみた!!!【IFTTT】

こんにちは。LINEは自分にとって革新的なアプリでした。中学時代流行った時、よく友達と夜遅くまでLINEしたものです。笑というわけで今回はPHPとIFTTTを使ってLINEでメッセージを送りたいと思います。IFTTTについては以下の記事も書いてます。takeru232423.h…

【PHP】会員登録なしで投票できる仕組みを考えてみた!【Cookie】

こんにちは。クッキーといえばステラおばさんのクッキーが好きです、、、、、、 今回はタイトル通り、「会員登録なしで投票できる仕組み」について考えていきたいと思います。最近、会員登録なしで投票ができるWebアプリを見かけます。例えば以下のアプリ ta…

【PHP】MediaWiki APIを使って情報を取得してみた!!!

MediaWikiのAPIを使ってみました。このAPIを使うことによりWikipediaのデータへアクセスすることができます。さっそく、使ってみました。 実行結果 自分の好きなNBA選手「カーメロアンソニー」のWikipediaにおける最初の節の文章を取得しました。 ソースコー…

【PHP】Pagination(ページネーション)を作ってみた!!!

今回は、長いコンテンツやページを分割する際に使われる「ページネーション」を作っていきたいと思います。 完成品 5データごとにページを変える7をクリックすると ソースコード <html lang="ja"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>Document</title> </meta></meta></meta></head></html>

【PHP】Web APIを作ってみた。【Lakers】

普段APIを使う側なので、作るのも体験しようかと思い簡単なAPIを作ってみました。NBAが大好きなので、NBAに関するAPIを作りたいと思い、その中でもLeBron、ADが率いるLakersが好きなので、Lakersに関するテーマにしました。 API概要 PPG(1試合平均得点)、RP…