プログラミング

【変数とは】初心者が最短でPHPを使えるようになるための実践的な学び方

HTML PHP プログラミング学習
【変数とは】初心者が最短でPHPを使えるようになるための実践的な学び方

 

※PHP初心者へ向けた内容となりますので、ある程度HTMLの知識がある方を対象とした内容になります。予めご了承ください。

  

Webプログラミングを学ぶ方はHTML、そしてCSSを学び、そしてJavascriptPHPという順に学んでいくひとが多いでしょう。

私も実際に、似たような手順で学んでいきました。

 

中には、HTMLCSSの知識はあるからサイトは作れるけど、動的な機能は取り入れられずレガシーとされる部分で停滞してしまう人が多いです。

そしていざ業務やフリーランスで活かそうと思ったときに、太刀打ちできないという状態に陥ります。

 

今回はそういった「プログラミングの本当の入口」で立ち止まってしまっている人へ向けて、理解を深めていくために必要な実践的な手順を、PHPに焦点を絞って解説していきます。

 

超実践的なステップですので、順にしっかりと取り組んでいけば、まったくPHPに理解がない状態からでも、早い段階で実践的なサイトやアプリケーションに触れられるようになっていくでしょう。

ゆっくり、着実に学んでいきたいという人は、参考程度にお楽しみください。 

 

 

超実践的ステップ

 

スクールや書籍などで学んだ人は、ある程度手順に沿って学んでいきますね。

しかし早くから実践に触れる人は「その時に必要だったこと」から学んでいきます。

 

正しい手順で知ることは、たしかに間違いではありませんが、それを細分化してしまうことはかえってマイナスになり兼ねません

ハードルが多ければ多いほど、そのぶん挫折するタイミングが多いということです。

 

ではどの部分にウェイトを置いて、どういった手順で進めてば良いのか。それに必要となるのが以下の3つです。 

変数

配列

関数

 

今回は最初のステップになる変数について説明していきます。

 

 

変数

 

変数とは箱のようなもの

 

こういった説明がほとんどでされています。実際にそう表現することに間違いはありませんが、いまいち実感が掴めないものです。

なので、実際に見て動かしてみるのが手っ取り早いですね。

 

 

基本

 

HTMLで作られたサイトで考えて見ましょう。 

<!DOCTYPE html>
<html lang="jp" dir="ltr">
<head>
       <meta charset="utf-8">
       <title></title>
</head>

<body>

       <header>

              電話番号:090-0000-0000

       </header>

       <main>

              電話番号:090-0000-0000

       </main>

       <footer>

              電話番号:090-0000-0000

       </footer>
                  
</body>
</html>

 

ヘッダー部分とフッター部分にお問い合わせ先の電話番号を入れています。

現在「090-0000-0000」という番号を使用していますが、もしこれが「080-0000-0000」と変更になった場合はどうでしょうか?

毎回3箇所の番号を変更してあげなければいけませんね。

 

そういった手間を省くために変数があります。

<?php $tel = '090-0000-0000'; ?>

<!DOCTYPE html>
<html lang="jp" dir="ltr">
<head>
       <meta charset="utf-8">
       <title></title>
</head>

<body>

       <header>

              電話番号:<?php echo $tel; ?>

       </header>

       <main>

              電話番号:<?php echo $tel; ?>

       </main>

       <footer>

              電話番号:<?php echo $tel; ?>

       </footer>
                
</body>
</html>

 

一番上で「$tel = ‘090-0000-0000’」というコードが追加されましたね。

これは【tel】という変数に【090-0000-0000】という文字列を入れていることになります。

PHPでは変数だということを表すために、最初に$(ドルマーク)を付けます。

PHPのコードは原則「<?php  ?>という囲いの中に記述する必要があります。

※変数に入っている文字列をHTMLで表示させたいときにはechoと手前に付けてあげれば書き出してくれます。

 

こうしていれば、電話番号が変更になっても一番上を変更するだけでページ内全てに反映されるので管理やチェックが楽になりますね。

 

他にも、HTMLタグを入れることも可能です。

<?php

$ad = '<div class="box">広告だよ!</div>';

 ?>

 

こうしておけば、この広告を貼り付けたい場所に先ほどのように変数を書き出しておけば表示することが出来ます。

これだけの記述量ではわざわざ書いても問題ないかも知れませんが、もっと長い文であったり、構造的にいくつもタグが入っている物を使い回す場合は楽になります。

そして何より、更新をするときに楽ですね。クラス名を追加しようと思っても、変数に入れている箇所だけ変更すれば、ページ内全てに反映させることが出来ます。

※変数に入れる際、文字列の場合はシングル(またはダブル)クォーテーションで囲っておきましょう

※数字を入れる時は囲わなくても大丈夫です

 

変数とは、最初に準備しておけばあとは使い回しができる便利ボックスです。

電話番号やメールアドレスなど、他にも何度も出てくるものはこうやって使ってみると、とっても更新が楽になります。

 

 

応用

 

さて、変数へ入れて複数の場所で使うということを覚えました。では少しひねって応用的な使い方をしてみましょう。

先ほどタグを変数に入れられることが分かりました。では、そのタグを入れた変数の中で、変数に入れている電話番号を使いたい時はどうすれば良いでしょうか?

 

<?php

$tel = '090-0000-0000';

$telbox = '<div class="tel-box">'.$tel.'</div>';

 ?>

 

上記のようにすれば、$telboxの中に、変数に入れてる電話番号を更に入れることができます。

文字列の終わりはシングル(またはダブル)クォーテーションになるので、そこにつなげるために.(ドット)を付けて変数をつなげてやり、その後再度タグ(文字列等)がくるのであれば、そこからをシングル(またはダブル)クォーテーションで囲い、再度ドットを使ってつなげてやればよいのです。

 

そして、注意して置かなければいけないのは順番です。

 

悪い例

<?php

$telbox = '<div class="tel-box">'.$tel.'</div>';

$tel = '090-0000-0000';

?>

 

逆になってしまうと、上から順番に処理をするため、$telbox内で使おうと思っている$telが見つからないという自体が発生してしまいます。これはエラーとなります。

 

変数の中でも変数が使えることがわかりました。こうなれば、活躍の場はどんどん増えていきます。

また、変数は書き換えることもできます。

<?php $tel = '090-0000-0000'; ?>

<!DOCTYPE html>
<html lang="jp" dir="ltr">
<head>
       <meta charset="utf-8">
       <title></title>
</head>

<body>

       <header>

              電話番号:<?php echo $tel; ?>

       </header>

       <main>

              <?php $tel = '080-0000-0000'; ?>
              電話番号:<?php echo $tel; ?>

       </main>

       <footer>

              <?php $tel = '070-0000-0000'; ?>

              電話番号:<?php echo $tel; ?>

       </footer>

</body>
</html>

 

こうすれば、ヘッダーでは090メインでは080フッターでは070の番号が表示されます。

使い方によっては変数の中身を書き換えるほうが良かったり、別で用意をするほうが良いケースなど様々なので、実際に試して良し悪しを見極めていくと良いでしょう。

 

変数だけとっても、ただHTMLで記述するだけとは大きく作業効率が上がります。

まずはしっかりと変数の使い方を実践で理解を深めておくことが大切です。

 

 

細かな知識は後回し

 

intstringなどと言った変数の型、参照や値渡しなどという細かな知識も変数を理解する上では確かに必要です。

ですが、これを最初の段階から無理に覚える必要は有りません

なぜなら、実践で使っているうちにこういった問題点に必ず直面するからです。

まずはざっくりと知り、そして実際に動くということを実感してみるほうが大切です。そうなれば、そういった壁に直面したときにより理解がしやすくなります。

 

 

勉強から実践へ

 

少し「勉強」という部分にも触れておきましょう。

スクールや書籍で勉強することは大変素晴らしいことです。基本知識が乏しい状態で進んでいくと、いざ実践的に何かを作ろうとしたときにつまずき、挫折してしまうことがほとんどです。

 

しかし、勉強だけにウェイトを置いてしまうのも実は大きな問題があります。

ある程度知識がある状態で実践に望むと、自分が今できることしかやらなくなってしまいがちです。

これは「自分はこれを学んでいないからできない」という潜在意識が勝手にあなたのスキルアップのチャンスを摘み取って閉まっているのです。

 

勉強することは大切です。しかし、いざ実践で本当に役立つのは「調べる」ということなのです。

 

 

実践では「調べる」

 

いざ何かを作るとなったとき、まずは「何を作るか」が先にきます。自主制作の場合は、最初から決めておいても壁に直面すると諦めてしまったり、妥協するポイントを見つけてしまいがちです。

 

ですが、実際に仕事を受注することになればそうはいきません

勉強しておくことは確かに実践でも役立ちますが、100%を勉強したことで対応しようとなれば、いつまで経っても勉強から実践に移行することができません。

 

なので、勉強はあくまで自らのベースとして、実践で壁に直面したときには調べることが必要になります。

勉強をする上でも、もちろん調べるタイミングは必ずでてくるはずですが、その比重のおき方が大きく異なります。

なので、できるだけ早く「調べなければならない実践」に手をつけることをオススメします。

 

仕事を受注するのがまだ難しい方であれば、自分向けのサービスを作ってみてください。それがポートフォリオで終わってしまうものではなく、それが将来お金に変わるものを想定していれば、実践にかなり近い学びが得られます。

 

 

まとめ

 

プログラミングにおいては初歩の初歩となる変数について説明していきました。

読んで「なるほど」と思った人はすぐに使ってみてください。読んで満足するだけでは、多くのことがリターンがほとんど得られません。

 

次は第2ステップの「配列」についてです。今回の内容が身についていれば、必ず次のステップもすぐに自分の物にできるはずです。

【配列とは】初心者が最短でPHPを使えるようになるための実践的な学び方 【配列とは】初心者が最短でPHPを使えるようになるための実践的な学び方

  初心者の方、今からプログラミングを始める方、HTMLとCSSの領域から抜け出せない人たちを対象にした、PHPをできるだけ使えるようになるための方法を紹介するコーナー。 栄えある第二回は【配列編】です。   第一回を飛ばしてこのページへに来てしまい「変数って何?」というレベルの人は、第一回の【変数編...

 

PHPがどういった言語か、なんとなく理解できて実践で使えるようになれば、ぜひ書籍を使った学習も取り入れてみてください。最初から勉強に走るよりも、急激に吸収力が高くなります

「実践 ⇒ 学習」という手順を踏めば、開発を重ねるたびに可視性が良く無駄の少ないコーディングができるようになりますよ。

パーフェクトPHP パーフェクトPHP

ワイがPHPを勉強した一冊や! というより、書籍はこれしか読んでないで! ちなみに、最初からこれに挑むとほぼ100%挫折するので、ある程度PHPを理解してからの方がいいぞ   オブジェクト指向がよく分かってなくて、関数がなんとなく理解出来てたあたりで読み出して、理解を深めた一冊や。 古い本やけど、...

注目の記事

コンテンツ配信業でバズるために大切な3つの法則〜『1ヶ月でチャンネル登録者数1000人』は参考にするな
マーケティング
YouTube,YouTuber,ブログ
コンテンツ配信業でバズるために大切な3つの法則〜『1ヶ月でチャンネル登録者数1000人』は参考にするな

  YouTubeやブログを始めたけど思ったように伸びない・・・   こういった人は、チャンネル登録者数を伸ばす方法などの動画を見ても参考にならなく、結果に繋がらないという場合がほとんどです。 その理由は、その人自身に問題があるわけではなく、動画の前提条件がそもそも違っているからです。   今回は「...

ノーコード開発で将来プログラミングは不要?我々は何を学ぶべきなのか
プログラミング
amazon,AWS,Honeycode,NoCode,プログラミング学習
ノーコード開発で将来プログラミングは不要?我々は何を学ぶべきなのか

  近年、プログラミングの需要は増え勢いを増していますが、それ以上にノーコードというソースコードを打たなくでもアプリ開発ができるというソフトウェアやプラットフォームが普及してきました。 これにより一部の期待感とは別に、プログラマーという職業は今後不要になるのではないかと危機感を抱く人が出て...

名刺は時代遅れ!?Googleの名刺検索「ピープルカード」とは
フリーランス
Google,SEO
名刺は時代遅れ!?Googleの名刺検索「ピープルカード」とは

  Googleが2020年8月よりインドでピープルカードの検索機能を開始しました。これがフリーランスや個人事業主、起業家などに対して営業ツールとして大きな影響をもたらすのでは無いかと期待されており、今後ビジネスにおける繋がりが大きく変化していくことも予想されます。   今回は、そんなGoogleの新し...

わざマシン編 習得 PHPポケモン105
プログラミング
PHP,PHPポケモン,ポケモン
わざマシン編 習得 PHPポケモン105

わざマシンによる技習得 前回、わざマシンのアイテムクラスを作成したので、今回は実際に使用するまでの処理を作成していきます。 まずは、アイテムクラスに使用時の処理(effectsメソッド)を増設しましょう。   わざマシン01(/Classes/Item/ItemTM01.php) <?php require_once(root_path('Classes').'...

PHPポケモン「バトルシステム編〜努力値の獲得〜」33
プログラミング
PHP,PHPポケモン,ポケモン
PHPポケモン「バトルシステム編〜努力値の獲得〜」33

努力値の実装 今回はポケモンのやりこみ要素の一つ、努力値システムを導入します。既に努力値の項目は「ピカチュウで学ぶオブジェクト指向」の段階で実装し、ステータス計算にも判定済みですが、肝心な「努力値を獲得する仕組み」自体は出来ていませんでした。なので、バトルシステムも終盤となったこのタイミングで...

デザイン
サムネイル,デザイナー,バナー,広告
デザイナーにセンスは必要ない!誰でも作れるおしゃれなサムネイル

  「デザイナーになるためにはセンスが必要ですか?」   バナーづくりの小規模講習会を実施した際に、この質問した人がいました。 よくある質問なのですが、いつも決まって自分の回答は「NO」です。   実際に一流のデザイナーとして活躍するレベルまでいくには、確かにセンスと呼ばれているものが必要...

ポケモン預かりシステム編 ボックスの作成 PHPポケモン 86
プログラミング
PHP,PHPポケモン,ポケモン
ポケモン預かりシステム編 ボックスの作成 PHPポケモン 86

ポケモン預かりシステムの実装 今回は、前回ざっくりと仕様決めをした「ポケモン預かりシステム」を実装していきます。ボックス内では操作する項目が多いため、ボックス自体に1つの画面を用意して、できる限りPHPによる制御だけで完結できるように作成していきます。   ボックスクラスの作成 それではまず、今...

進化の石編(実装)PHPポケモン103
プログラミング
PHP,PHPポケモン,ポケモン
進化の石編(実装)PHPポケモン103

アイテムによる進化 前回作成した、進化アイテムによる構成の続きです。   進化アイテムとして「かみなりのいし」、ピカチュウの進化判定を作成したので、アイテムの使用から進化処理までを作成、実装します。   今回作成する処理は以下の2点です。 アイテムの使用判定 進化画面への移管   それ...

カテゴリ

SEO対策 イベント デザイン ネットワーク ビジネスモデル フリーランス プログラミング マーケティング ライティング 動画編集 雑記

タグ

5G Adobe AfterEffects AI ajax amazon Animate api artisan atom Automator AWS Bluetooth CSS CVR description EC-CUBE4 ECショップ ESLint Facebook feedly foreach function Google Google AdSense Honeycode htaccess HTML IEEE 802.11ax Illustrator Instagram IoT JavaScript jQuery jQuery UI keyword LAN Laravel Linux MacBook MAMP meta MLM MySQL NoCode note OS OSI参照モデル Paypal Photoshop PHP phpMyAdmin PHPポケモン PremierePro rss SEO SEO対策 Sequel Pro Skype SNS SSH Symfony TCP/IP title Toastr Trait Twig Twitter UCC V系 WAN WebSub Wi-Fi wiki Windows WordPress XAMPP xml Xserver YouTube YouTuber Zoom アーティスト アウトプット アクセス層 アニメーション アフィリエイト イーブイ インターネット インプット エンジニア オブジェクト指向 お金配り クリック単価 クリック数 コミュニケーション能力 コロナ コンサルティング サムネイル システムエンジニア スタートアップ スタイルシート スパム データベース ディープフェイク デザイナー デザイン テレワーク ナンパ ニュース ネットワークモデル ノマドワーク バナー ピカチュウ ビジネス フィード フリーランス ブロガー ブログ プログラマー プログラミング プログラミング学習 プログラミング教育 プロトコル ホームページ制作 ポケモン マークアップ マーケティング メール リモートワーク レンダリング 三井住友 三宮 仕事依頼 児童デイ 児童デイサービス 児童発達支援 公開鍵 初心者 助成金 勉強法 営業 広告 広告収入 必勝マニュアル 放課後等デイサービス 朝活 楽天 深層学習 無線LAN 独立 神戸 福祉 秘密鍵 翻訳 自己啓発 英語 見積書 計算機 読書 起業 迷惑メール 配列 銀の弾丸 集客 雑学力