タグ

ブックマーク / blog.capilano-fw.com (15)

  • PHP 8 の新機能をLaravelで使ってみた

    さてさて、皆さんもよくご存知のとおりですが、LaraveだけでなくPHP自体もアップデートを繰り返していて、常に新しい機能が加わったりしています。 そして、来たる「2020.11.26」に次期バージョンのPHP 8がリリースされることになってます(私がPHPを使い始めたのがバージョン4でしたので、何か説明のできない興奮があります😂) PHP 8の目玉機能としては、やはり「JITコンパイラ」による超高速化ですが、プログラミング的にもいくつか「おっ!」と思うものがありました。 そこで❗ 今回は、その気になるPHP 8の新機能をLaravelで使ってみることにしました。 ぜひ皆さんのお役に立てましたら嬉しいです😊✨ 「プレステも、もう5になるんですね」 開発環境: Laravel 8.x 関数に渡すパラメータの順番が自由になる これまでのPHPでは、関数に渡す引数(パラメータ)は必ず順番を守

    PHP 8 の新機能をLaravelで使ってみた
  • コードを共通化してスリムにするテクニック(Laravel&Vue)

    さてさて、先日レッスンをさせていただいている生徒さんから「重複するコードを共通化する」テクニックが勉強したいという貴重な意見をいただきました。 確かに、ドキュメントではコードの書き方自体は説明していますが、「より効率的な(スリムな)」書き方ととなると、それほど多くはない印象です。 かく言う私も、(まだまだ未熟ですが)思い起こせばいろんな天才プログラマーさんたちのコードからテクニックをパクってきた歴史があるので、この意見は確かに的を射ているなと感じました。 ※このあたりは、問題が出たときに自分でフレームワークの中身までチェックしたり、英語版ですが、やはりstack overflowは勉強になりますよ👍 そこで❗ 今回は、私がメインで使っている「LaravelPHP)」「Vue」の中から、「こういう共通化ができますよ」というサンプルをまとめてみたいと思います。 ぜひ学習者さんたちのお役に立

    コードを共通化してスリムにするテクニック(Laravel&Vue)
  • 【Laravel Jetstream】複数モデルでログインできるようにする(Multi Auth)

    さてさて、Laravel 8.xがリリースされてしばらく経ちましたが、やはり驚きとともに迎えられたのがログインパッケージJetstreamではないでしょうか。 というのも、Jetstreamはインストールするだけでスマホのアプリと連携した2段階認証を実装していたりと、とても多機能だからですね。 そして、今回の記事はこのJetstreamにある機能をつけてみたくなったことが始まりでした。 それは・・・・・・・ マルチ認証 です。 ここで言うマルチ認証とは、一般的なusersテーブルにroleデータもたせたものではなく、全く別のモデルをいくつか使った「格的な」マルチ認証です。 この方式のメリットとしては、各モデルで保持するデータが別でもOKという点です。(例えば、芸人ユーザーなら「師匠の名前」、ミュージシャンなら「担当パート」という具合に専用のデータを持たせていいということになります) そこ

    【Laravel Jetstream】複数モデルでログインできるようにする(Multi Auth)
  • Laravel 8.x の新機能・変更点のまとめ

    さてさて、2020年の3月に7.xがリリースされたLaravelですが、約半年の期間を経て、この9月8日に「バージョン8.x」が公開されることになりました。🎉✨ そして、Laravelが大好きな開発者として、時期バージョンが気になってしょうがないので、ちょっとフライングしてリリースノートに書かれている内容をシンプルにまとめてみることにしました。(8.xのページがすでに存在していました) ぜひ皆さんの今後の参考になれば嬉しいです。 ※なお、8.xのリリース前に書いた記事ですので内容が変更になることも考えられます。そのあたりはご了承ください。また、まだ実際に動かしていない部分もありますので、今後変更する可能性もあります。 では、ひとつずつ見ていきましょう❗ 【追記:2020.09.08】オートインクリメントについての新機能を追加しました 【追記:2020.09.24】ルート設定の変更点を追加

    Laravel 8.x の新機能・変更点のまとめ
  • Laravelの気になるパッケージ「RestQL」

    さてさて、いつものごとくLaravel Newsで情報収集をしていたところ、以下の記事を発見しました。 ■Laravel Newsの記事 RestQL Data Resolution Package for Laravel これは、RestQLという新しいパッケージを紹介している記事なんですが、なかなか気になる内容だったのでこのブログでも紹介することにしました。 なぜ気になったかというと・・・・ Ajaxで一気にDBからデータ取得できる からです。 この機能は「Laravel + Vue + GraphQLでデータ取得」という記事で紹介したGraphQLにインスパイアされた機能で、よりシンプルに実装することができます。 そこで❗ 今回は「Laravelの気になるパッケージ」としてRestQLをご紹介したいと思います。 作者のGregori Piñeresさんありがとうございます! 「JSO

    Laravelの気になるパッケージ「RestQL」
  • 全15件!Laravel・使い回しできるAccessor実例

    さてさて、Laravel 5.7 がリリースされた関係で、最近は主に新しい機能についての記事を公開してきましたが、この辺でLaravelの基的な機能についても深く掘り下げてみたくなりました。 そして、今回の基的な機能は、Accessor(アクセッサー)です。 Accessorとは、DBから取得したデータを自動的に加工することができる機能です。 例えば、以下のようにuser_codeなどとして、ゼロで埋められたコードを取得できるようにする場合ですね。 $user = \App\User::find(1); $user->user_code; // 例: 0001 これの何がいいかと言うと、一度Accessorを作っておくと、後でいちいちデータ加工するコードを書くことなく、自動的に調整された正しいデータを取得できるようになるからです。 ということで、今回はそんなAccessorの便利な実例

    全15件!Laravel・使い回しできるAccessor実例
  • 【Laravel 5.8 】「こんなとき」のミドルウェア全7実例(ダウンロード可)

    さてさて、私がLaravelを使い始めたのはバージョン4.2が出てすぐだったのですが、現在はすでに最新バージョンが5.8になり、ちらほら5.9の話題もニュースとしてみかけるようになりました。 そして、前バージョンをよく使っていた開発者からすると「今は普通に使っているけど、すごく強力な機能」の便利さを再認識する場面が結構あったりします。 そして、その中のひとつが今回の話題「ミドルウェア」です。 ミドルウェアとは、ページにアクセスする直前に実行されるもので、条件によってリダイレクトしたり別のページを見せるといったことが簡単にできるようになっています。(例えば、ログインしたユーザーしか見られないページもミドルウェアのひとつですね) ということで、今回はこのミドルウェアの基的な使い方と「こんなとき」に使えるサンプルを実例で紹介してみたいと思います。 ぜひ、皆さんのお役に立てると嬉しいです😊✨

    【Laravel 5.8 】「こんなとき」のミドルウェア全7実例(ダウンロード可)
  • 【Laravel】ファイルのアップロード機能をつくる(ダウンロード可)

    さてさて、先日300記事を突破したので過去の内容をチェックしてみることにしました。 すると、「あれ、記事にしてなかったっけ❓❓」というものがありました。 それは・・・ Laravelでファイルをアップロードする機能 です。 過去にファイルアップロードを効率化する独自パッケージ「ClampBolt」を公開しているので、てっきり記事として公開しているものと勘違いしていました😂 そこで❗ 今回はLaravelで顧客データを保存&プロフィール画像も一緒にアップロードできる機能を作ってみたいと思います。 ぜひ楽しみながらやってみましょう❗ (なお、根を理解していただきたいので、今回ClampBoltパッケージは使いませんm_ _) 「できるだけ他でも使いやすい形にします👍」 開発環境: Laravel 7.x モデル&マイグレーションをつくる まずはDB関連からやっていきます。 モデル、マイグ

    【Laravel】ファイルのアップロード機能をつくる(ダウンロード可)
  • PWAアプリをLaravel + Vueでつくる方法(ダウンロード可)

    さてさて、前回記事「Laravel + Vue + GraphQLでデータ取得」では最近知った新しい技術をテーマにした内容をお届けしました。 そして、今回はその流れで「知ってはいたけど、なかなかチャレンジする機会がなかった」内容をお届けしたいと思います。 ズバリ、それは・・・ PWA(Progressive Web Application) です。 PWAとは、簡単に言うと「ウェブの技術でスマホのアプリがつくれる」というもので、大部分のシェアを占める iPhoneAndroid 両方に対応しています。(厳密にはiOSの場合、インストール部分などで未整備の部分もあります) そこで! 今回はLaravelを使って、PWAを実装してみたいと思います。 ぜひ楽しみながらやってみましょう❗ (最後に今回開発したソースコード一式をダウンロードできますよ😊) 「正直言うと、手こずりました😂」 開発

    PWAアプリをLaravel + Vueでつくる方法(ダウンロード可)
  • Laravel 7.xの新コンポーネント機能!実例

    さてさて、Laravelのバージョン7.xがついに公開されるということで一足先にどのような機能が追加になったかをチェックしてみました。 いくつかLaravel 7.xには新しい機能が追加になっていますが、その中でもひときわ興味を引かれたのが、 Bladeの新コンポーネント機能 です。 正確に言うと、以前からBladeにはコンポーネント機能が存在していたのですが、今回はその機能が大幅に拡張され、いろいろと便利に使えるようになっていますので、今回の記事でまとめてみることにしました。 ぜひ皆さんのお役に立てると嬉しいです😊✨ 【追記:2020.3.14】Laravel 7.1.2未満のバージョンにBlade Component由来のXSS(クロスサイトスクリプティング)の脆弱性が報告されています。できるだけ早くアップデートすることをおすすめします。 開発環境: Larave 7.x 何が一番変

    Laravel 7.xの新コンポーネント機能!実例
  • Laravel・データベースのデータ操作(追加/変更/削除)する全実例

    さて、前回は記事内容が20,000文字を越える長編記事「Laravel・データベースからデータ取得する全実例」をお届けしましたが、今回はその続編として「DBのデータの追加/編集/削除」に焦点を当ててまとめてみました。 ※実を言うとこの2つは元々ひとつの記事にするつもりでしたがあまりにも膨大になりすぎることがわかったので、急遽分割することにしました。 では、早速ひとつずつ見ていきましょう。 【環境】 Laravel 5.6 MySQL 5.7 DBにデータを追加する insert()を使ってデータ追加する データベースにデータを追加するにはinsert()を使います。 実際の例を見てみましょう。 \DB::table('items')->insert([ 'name' => '名前' ]); まず、\DB::table()でどのテーブルを使うかを指定し、そしてアロー演算子「->」を使ってin

    Laravel・データベースのデータ操作(追加/変更/削除)する全実例
  • Laravel 6.xのLazy Collection(新機能)を紹介します

    さてさて、先日Laravelのバージョン6.xがリリースされたので前回記事では(実装方法が変更になっていた)ログイン機能の使い方をご紹介しました。 そして、新バージョンのLaravelには変更だけでなく追加機能もいくつか用意されていて中でも開発者が「ゲーム・チェンジャー」と呼ぶ機能があります。 それが、 Lazy Collection(れいじーこれくしょん) です。 これは、これまでのLaravelでも人気が高いCollectionの機能を拡張するもので、使い方によってはコードの実行を省力化することができる機能になっています。 ということで、今回はLaravel 6.xの新機能の中からLazy Collectionを紹介します。ぜひ皆さんのお役に立てると嬉しいです😊✨ 開発環境: Laravel 6.1 Lazy Collectionとは まず、Lazy Collectionがどんなもの

    Laravel 6.xのLazy Collection(新機能)を紹介します
  • Laravel + Vue で問い合わせフォームをつくる

    さてさて、ウェブ開発をしているとよく必要になる機能のひとつにお問い合わせフォームがあります。 もちろんクライアントさんだけが利用するタイプのサイトなら不要ですが、それ以外はだいたいどのようなサイトでもユーザーが運営者に連絡ができるようお問い合わせフォームを開設しています。 そこで、今回は比較的ご要望が多いお問い合わせフォームを Larave + Vueで作ってみます。 いつもの内容より基的な内容が多くなっているので、ぜひ参考にしてくださいね。(最後に今回のプログラムコード一式をダウンロードできます!) 開発環境: Laravel 5.7 やりたいこと 今回開発する内容は以下のようなお問い合わせフォームです。 問い合わせ内容をメールで送信 バリデーション(入力チェック)をする Ajax通信で送信(ページの移動はなし) では実際に開発していきましょう! お問い合わせの入力ページをつくる(デザ

    Laravel + Vue で問い合わせフォームをつくる
  • Electron + Python で選んだ顔にモザイクをかけるアプリ(ダウンロード可)

    さてさて、このところElectronのプログラムが面白くなってきて個人的にもいろいろと開発する意欲が湧いてきています。 そして、そんな中で自然と試したいことが頭に浮かんできました。 それは・・・・・・ 他の言語とのコラボレーション です。 つまり、ElectronはNodeJS(JavaScript)を使っていますが、これ単体だけではなく、例えば、Pythonやコマンドラインなども実行してみたくなったんですね。 ということで、今回は以前試してみた(といっても移転前のブログですが)Python + dlibの顔認証コードを使ってモザイク処理をするElectronアプリをつくってみます。 ぜひ学習の参考にしてみてくださいね。 ※ 開発環境: Electron 2.0、Python 2.7 やりたいこと せっかくElectronを使うので、単純に検出された全ての顔にモザイクをかけるというアプリで

    Electron + Python で選んだ顔にモザイクをかけるアプリ(ダウンロード可)
  • Laravel 5.7 のEmail Verification(本登録メール)の使い方 – console dot log

    さてさて、このブログで何度も取り上げている人気PHPフレームワークのLaravelですが、新バージョン5.7が2018年9月4日に公開されました。 このマイナーバージョンアップによっていくつか新機能が追加されているわけですが、今回はその中でも特に便利だと感じた機能Email Verificationの使い方をまとめたいと思います。 ぜひ参考にしてみてください。 Email Verificationとは? まずは機能の説明から。(知ってる方は次まで読み飛ばしてください) 例えば、あるウェブサイトを作って会員登録ができるようにするとします。この場合、いろいろなパターンのユーザー登録の方法がありますが、一般的によく使われるのは以下のような一旦Eメールを挟むパターンだと思います。 メールアドレスとパスワード(+α)を入力してもらう 入力されたメールアドレスに仮登録のメールを送信 仮登録に書かれたU

    Laravel 5.7 のEmail Verification(本登録メール)の使い方 – console dot log
  • 1