PHPでサイトを作る場合、ログイン機能や掲示板機能などを
簡単に設置できるフレームワークにLaravel(ララベル)があります。
自分で口コミサイトのような複雑なサイトを作る場合、
PHPを素で打ってくよりLaravelを使えば簡単に作れるよと
あなたも聞いてここにやってきませんでしたか?
最近は「PHPでサイト作るなら、Laravelを使うのが必須!」みたいな風潮すらあります。
私自身も「へぇ、Laravelがあれば、簡単に口コミサイトが作れるんすね~」
とLaravel入門してみた口ですが、
ただ実際にLaravelを学んでみると、自分が想像していたものとは全然違うものでした!
ここではあなたにも、Laravelとはどういうシステムなのか、どう使うのかを WordPressやJqueryなどを例に出しながら、あなたがPHPやプログラミングに詳しくなくても、「そういうもんなのか~」と分かるようにやさしく解説していきます。
→Laravel初心者が絶望するController,Blade,Routesの関係が図解でよく分かる!
→Laravelって稼げるの?独学?スクール?高給を稼ぐためにどうするべきか教えます。
Laravelとは?Wordpressで使えないフレームワーク!?
まず、筆者は最初Laravelの事を、
[st-kaiwa1 r]あ~これってようは、Jqueryみたいなもんね。例えば、WordPressに掲示板機能を付けたかったら、LaravelのコードをWordPressのheader.phpに書き足せば、掲示板をWordPressに実装できるって事ね。そりゃ便利だな![/st-kaiwa1]
って、思ってたんですけど、実際勉強してみたら、
残念ながら、Jqueryみたいなのとは全然違いました(汗)。
LaravelはJqueryのようにはWordPressでは使えない?
そう、LaravelってWordPressに機能追加ができるわけじゃないんです。
Jqueryみたく、WordPress の header.php や footer.php に
コードをちょろっと書き足せば動くってもんではないんですよ。
むしろイメージ的には、Laravelは、WordPress本体みたいなものだと思った方が分かりやすいです。
だから、あなたがウェブサイトを作る時に、
「じゃあ、このウェブサイトは、WordPressで作ろうかな~、それともLaravelで作ろうかな~」っていうのが正しい感覚って事です。
[st-kaiwa3 r]え、そうなの?じゃあ、Laravelってフレームワークっていうか、CMSなの?[/st-kaiwa3]
LaravelはCMS(コンテンツ管理システム)ではないんですよ。
なぜなら、WordPressみたいなCMSっていうのは、
コード書かなくても、記事が作れるシステムじゃないですか。
WordPressみたいなCMSだったら、
HTMLとかCSSとか分からない人でも、エディターに文字を打ち込んで、
ボタンをポチッと押すだけで投稿できたり、文字を装飾できたりするでしょ。
こういうエディターでサイト作成出来ちゃうのがCMS(WordPress)であって、
Laravelには、こういうエディター画面があるわけじゃないんですよ。
だから、サイト作るなら、1からHTMLやPHPのコードを打ちながら
サイトを作ってく必要があるんです。
こうやってコードを書いてく必要があるんです。
Laravelはじゃあどう使うの?
すごく大雑把に解説すると、イメージはこんな感じです。
[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#94b8ff” bgcolor=”#ffffff” borderwidth=”2″ borderradius=”2″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]
- まず、Laravel本体をサーバーにインストールする。
- すると、サーバー上にLaravelフォルダができる。
- そのLaravelフォルダの中で、PHPやHTMLを書いていく。
- サイトができる
[/st-mybox]
例えば、WordPressも最初サーバーにWordPressをインストールするじゃないですか。
で、WordPressのフォルダが出来て、中にwp-admin, wp-contentみたいなフォルダが入ってて、その中にテーマとか、画像とか、いろいろ入ってるじゃないですか。
こんな感じに↓
これと一緒で、Laravelもまずサーバーにインストールすると、フォルダ郡ができます。
↓
例えば、このフォルダ郡の中の「public」に index.phpを作れば、
そのindex.phpがブラウザで表示されるって感じです。
(実際はそんなシンプルではないんですけど、基本はこんな感じ)
そう、結局だからLaravelって、WordPressのプラグインみたいな感覚ではないんですよ。
むしろWordPressみたいな大きなシステムだと思った方がいいです。
1サイトに対して、1WordPressをインストールするのと同じで、
1サイトに対して、1Laravelをインストールします。
[st-kaiwa3 r]え、つまり、Laravelはエディタ画面がないWordPressって事?それってHTMLやPHPの知識がかなりないと使いこなせないんじゃないの?あー頭が痛くなってきた![/st-kaiwa3]
[st-kaiwa1 r]いや、WordPressのようにブログを作る事もできるよ。ようは、WPのheader.phpとかfunction.phpみたいないわゆるテーマ部分から自分で作っていくのがLaravelって感じ。[/st-kaiwa1]
[st-kaiwa3 r]はぁ?WordPressと違って死ぬほど面倒じゃん!じゃあ、なんのためにLaravel使うの?メリットが見えないんだけど?[/st-kaiwa3]
[st-kaiwa1 r]そうだね、メリットを説明するね。[/st-kaiwa1]
じゃあLaravelを使うメリットって何よ?
そう、だからもしあなたがLaravelでブログを作りたいって思ってるなら、
まずLaravelにテキストエディタ(入力フォーム)を設置する必要があります。つまりWordPressでいう投稿画面を自分で作るって事です。
↑実際にLaravelで作った投稿画面。そうすれば、WordPressとほぼ同じ事ができます。
[st-kaiwa3 r]だったらWordPress使えよ!って感じだよね。[/st-kaiwa3]
[st-kaiwa1 r]その通り。でもブログじゃなくて、君が口コミサイトを作りたいとしたらどうする?[/st-kaiwa1]
[st-kaiwa3 r]え、それはWordPressだとプラグインを駆使しても結構難しい気が・・[/st-kaiwa3]
そう、ブログではなく、例えば口コミサイトを作るとしたら?
2chやNaverまとめみたいな投稿サイトやツイッターのようなSNSを自分で作るとしたら?
それをWordPressで作ろうとするととても難しいですよね。
あくまでWordPressはブログのシステムなんで。
だから、口コミサイトとかSNSを作りたかったら、
PHPとかRubyなどのプログラミング言語をゴリゴリ打ちながら1から作っていくしかない!
[st-kaiwa3 r]ひゃー、自分には完全に無理~[/st-kaiwa3]
でも、プロのプログラマーでも、1からログインの仕組みとか、投稿画面とか、1つ1つを作っていくのは、すんごく大変。特に初心者が見様見真似で作っても、セキュリティがアマアマになってしまうというリスクもあります。
そこで登場するのが、Laravelです。
Laravel には予め、いろんな機能が用意されていて、
自分がLaravelで作ったサイトに、ログイン機能を追加したい~って思ったら、
Laravel のログイン機能(パッケージ)をダウンロードすれば、さくっと実装できます。
自分でログイン機能をPHPを打って1から作らなくても、予め用意されたLaravelのログイン機能を使えば、ものの数分で実装できちゃうというわけです。
こういったログインしたユーザーが書き込める知恵袋のようなサイトもLaravelなら作れます。
[st-kaiwa1 r]この辺は、WordPressのプラグインや、WordPressにJqueryで機能追加するのと感覚は同じだね。[/st-kaiwa1]
つまり、ブログではなく、SNSや投稿型サイトなどをPHPで作る際、
予め作るためのパーツを用意してくれてるのがLaravelだと思ってください。
- PHPでブログを1から作るのは大変。だからWordPressというPHPで作られたセットを使う。
- PHPでSNSを1から作るのは大変。だからLaravelというPHPで作られたセットを使う。
イメージ的にはこういう感じなんです。
Laravelは他のフレームワークやJqueryとかと一緒に使えたりしないの?
[st-kaiwa3 r]なんか、Laravel以外にも、フレームワークって呼ばれるもの、例えばCakePHPとか、Ruby on Rails とかあるけど、そういうのとは一緒に使えないの?[/st-kaiwa3]
他のフレームワークとは、基本的に一緒には使えないようになってます。
というのも、それぞれがWordPressみたいな一つのシステムになってるからです。
WordPressではWordPress専用のプラグインしか使えないのと同じで、
LaravelにはLaravel専用の機能しか使えない。
CakePHPの機能やRailsの機能は使えないって事なんです。
[st-kaiwa3 r]え、でも例えば、Laravelには無くて、CakePHPにはある機能を自分のサイトに付けたい場合はどうすればいいの?他のフレームワークは使えないんじゃ不便だよね?[/st-kaiwa3]
[st-kaiwa1 r]もし、欲しい機能がLaravelになければ、自分でPHPを打って作る事になるね。もしくはJqueryとかで実装できたりもするよ。[/st-kaiwa1]
Laravelというシステムの中で、PHPやHTML、CSS、Javascriptを書いていく事はできます。
なので、JavascriptのライブラリであるJqueryを使う事も可能なんです。
これは、WordPressの中で、PHPやHTML、CSS、Javascript、Jqueryが書ける事と全く同じです。
[st-kaiwa1 r]ちなみに、PythonやCurlなんかとも連携は可能。例えば、Laravelサイトに投稿された文章を一回Pythonで作ったフリガナ自動付与システムに送って、それをLaravelに戻すとかね。
[/st-kaiwa1]
Laravelを使うにはどんな知識が必要?
[st-kaiwa3 r]とにかくLaravelを使うには、PHPが読み書きできる事が必須って事だね。[/st-kaiwa3]
[st-kaiwa1 r]PHPの基礎が分かってても、最初は絶対つまづくと思う・・[/st-kaiwa1]
Laravelは、PHPの初歩の読み書きができれば確かに扱えるんですが、でもLaravelにはLaravel独自の文法(書き方)があるんです。
例えば、普通のPHPだったら、
<? php if(なんたらかんたら~) ?>
みたいに書くところを
Laravelだと、
@if(なんたらかんたら~)
みたいに書いたりします。
もちろん、Laravelの中でも普通のPHPの書き方は使えるんですが、
より簡略化したLaravel独自の書き方も結構出てくるので、使いこなすにはそれを覚える必要が出てきます。
[st-kaiwa3 r]え~、また新しい文法覚えなきゃいけないの~。もうややこしすぎるよ~[/st-kaiwa3]
[st-kaiwa1 r]気持ちは分かる。よく「LaravelはPHPを簡単にしてくれて最高~!」みたいな記事があるけど、それを使いこなすために最初にしっかりLaravel自体を勉強しないとWordPressみたくサクッと作りたいサイトは作れないんだ。[/st-kaiwa1]
結局、急がば回れで、Laravel自体の使い方をじっくり理解していかないと、自分が作りたいサイトをサクッと作るなんてできないです。その辺、WordPressはプログラミングの知識がなくても本当にサクッとできちゃうのですごいですね。
Laravelとは:まとめ・結局Laravelってどういう人向け?
結局、Laravelは、WordPressみたいなシステムだと考えると分かりやすいです。
[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#94b8ff” bgcolor=”#ffffff” borderwidth=”2″ borderradius=”2″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]
WordPressがPHPで作られたシステムなら、
LaravelもPHPで作られたシステム。
[/st-mybox]
[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#94b8ff” bgcolor=”#ffffff” borderwidth=”2″ borderradius=”2″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]
WordPressの中でプラグインやテーマが使えるように
Laravelの中で便利機能(便利パーツ)が使えます。
[/st-mybox]
[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#94b8ff” bgcolor=”#ffffff” borderwidth=”2″ borderradius=”2″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]
1サイトに1WordPressをインストールするように、
1サイトに1Laravelをインストールします。
[/st-mybox]
[st-mybox title=”” fontawesome=”” color=”#757575″ bordercolor=”#94b8ff” bgcolor=”#ffffff” borderwidth=”2″ borderradius=”2″ titleweight=”bold” fontsize=”” myclass=”st-mybox-class” margin=”25px 0 25px 0″]
ブログを作るならWordPressが便利ですが、
掲示板、口コミサイト、SNSを作るならLaravelが便利です。
[/st-mybox]
LaravelはPHPで予め作られた便利機能(ログイン機能、掲示板機能)などがあるので、
PHPで1からそういった機能を自分で作るよりも、Laravelのパーツを使った方がより簡単に口コミサイトやSNSを作れるというメリットがあります。
でも、Laravel自体がかなり複雑な構造になっているので、1からLaravel自体の構造、使い方、文法を勉強しないと、とてもじゃないですがプログラミング初心者には使いこなせないなというのが印象です。この辺、サクッとコードを書き足せばどこにでも実装できるJqueryとは全然別物なんだなというのがLaravelフレームワークの印象でした。
ところで、あなたはなぜ今Laravelを学ぼうかなと思ったんですか?
稼げると聞いたから?
どれくらい上達すれば稼げるのか?本当にそんな高給を稼げるのかの現実を知ってますか?
詳しくは下の記事に本音の裏事情を書いてるので参考にしてくださいね。