1 00:00:00,000 --> 00:00:05,720 2 00:00:05,720 --> 00:00:07,620 >> DOUG LLOYD:だから私たちの中で PHPの構文のビデオ、 3 00:00:07,620 --> 00:00:10,480 私たちはどのようにPHPについて多くのことを話しました コマンドラインで使用することができ 4 00:00:10,480 --> 00:00:13,620 なるようにプログラムを実行します 我々はCからではかなり精通しています 5 00:00:13,620 --> 00:00:15,370 しかし、私も述べたように そのビデオで、PHP 6 00:00:15,370 --> 00:00:19,572 最初にするために開発されました Webプログラミング、ウェブサイトを実装します。 7 00:00:19,572 --> 00:00:21,780 だから、このビデオでは、我々はしています どのように私たちの話をするつもりは 8 00:00:21,780 --> 00:00:23,890 Web開発コンテキストでPHPを使用しています。 9 00:00:23,890 --> 00:00:26,360 >> 我々は、から、すでに知っています、 HTML上の私たちのビデオ、 10 00:00:26,360 --> 00:00:29,820 ウェブサイトが構築されていること HTMLタグのセットのうち 11 00:00:29,820 --> 00:00:32,850 それは意味的に定義します ウェブページの構造。 12 00:00:32,850 --> 00:00:35,910 しかし、ウェブサイトであること 純粋なHTMLで構築 13 00:00:35,910 --> 00:00:39,510 非常に苦しみます、 非常に重大な制限。 14 00:00:39,510 --> 00:00:42,690 >> この制限を説明するために、 それでは、次のことを考えてみましょう。 15 00:00:42,690 --> 00:00:45,665 だから今私は、Webページを構築したいです ユーザーがそれを訪問するたびに、その、 16 00:00:45,665 --> 00:00:49,760 それは私に電流を提供します マサチューセッツ州ケンブリッジの時間。、 17 00:00:49,760 --> 00:00:52,620 最新分にそれを表示します。 18 00:00:52,620 --> 00:00:57,910 私は今、この権利を作っていた場合は、 私はこのような何かを言うかもしれません。 19 00:00:57,910 --> 00:01:01,330 私が持っているので、Cambridge--の現在時刻 HTMLタグ、ヘッドタグ、タイトルタグ、 20 00:01:01,330 --> 00:01:04,610 本体は、電流をtags-- ケンブリッジでの時間は、14時08分です 21 00:01:04,610 --> 00:01:06,690 軍用時間をプリントアウトします。 22 00:01:06,690 --> 00:01:11,390 >> それは今14:09、14時09分だ場合はどうなりますか? 23 00:01:11,390 --> 00:01:16,470 さて、これまで、HTMLで、私が持っています 行くと午後2時09分に変更します。 24 00:01:16,470 --> 00:01:19,390 そして、1分後、 私は再びそれを変更する必要があります。 25 00:01:19,390 --> 00:01:22,132 そして、1分後、 私は再びそれを変更する必要があります。 26 00:01:22,132 --> 00:01:24,590 あなたが想像できるように、それはです これまでおそらく最悪の仕事。 27 00:01:24,590 --> 00:01:29,420 あなたは、Webページのウェブマスターなら、 1分ごと、1日24時間、 28 00:01:29,420 --> 00:01:35,970 あなたがして、現在の時刻を更新する必要があります 手動time.htmlを開き、変更 29 00:01:35,970 --> 00:01:41,750 言うべきコードのちょうどそのスニペット 時間と分で現在の時刻。 30 00:01:41,750 --> 00:01:45,850 それはおそらく非常にではありません 経営資源の有効利用、 31 00:01:45,850 --> 00:01:48,880 両方の人間と計算。 32 00:01:48,880 --> 00:01:51,297 >> すべてのHTMLあるサイト 完全に静的です。 33 00:01:51,297 --> 00:01:53,630 あなたが更新できる唯一の方法 コンテンツ、私たちは見てきたように、 34 00:01:53,630 --> 00:01:56,339 手動でそれらのソースを開くことです ファイルは、それらを編集し、それらを保存します。 35 00:01:56,339 --> 00:01:58,088 そして、ときにユーザー ページを更新し、 36 00:01:58,088 --> 00:02:01,080 または最初のページを訪問 時間、彼らは最新のコンテンツを取得します。 37 00:02:01,080 --> 00:02:03,970 しかし、我々はしましたという理由だけで それを手動で編集しました。 38 00:02:03,970 --> 00:02:07,980 >> 私たちはそこにいくつかのPHPを混合するために起動した場合、 我々のコードは、多くはより柔軟な得ることができます。 39 00:02:07,980 --> 00:02:11,940 そして、私たちは私達のページのための方法を持つことができます 動的に、または自分自身を更新し、 40 00:02:11,940 --> 00:02:15,360 私たちの貧困層を必要とせず 前の例のウェブマスター 41 00:02:15,360 --> 00:02:16,662 手動で物事を更新します。 42 00:02:16,662 --> 00:02:17,870 彼らは自動的にそれを行うことができます。 43 00:02:17,870 --> 00:02:19,130 私たちが介入する必要はありません。 44 00:02:19,130 --> 00:02:20,410 我々はいくつかの睡眠を得ることができます。 45 00:02:20,410 --> 00:02:24,850 どのおそらく良いことであればあります あなたは、Webプログラミングをたくさんやっています。 46 00:02:24,850 --> 00:02:28,360 >> だからCS50 IDEで、我々は実行します Webサーバは、Apacheと呼ばれます。 47 00:02:28,360 --> 00:02:35,250 これは、非常に一般的に使用される情報 オープンソースのWebサーバシステム。 48 00:02:35,250 --> 00:02:37,320 このシステムは、持っています 解釈する能力 49 00:02:37,320 --> 00:02:41,260 場合に有用であることが起こっている、PHP、 あなたは、任意のPHPプログラミングをしたいです。 50 00:02:41,260 --> 00:02:45,230 >> そして、CS50 IDEで、我々はコマンドを持っています 行うにはこれは非常に簡単にするために、 51 00:02:45,230 --> 00:02:47,280 開始apache50。 52 00:02:47,280 --> 00:02:49,445 そして、そのスラッシュ パスにスラッシュ、スラッシュ 53 00:02:49,445 --> 00:02:53,350 DIRは、それはの本当に一般的な方法です あなたがここで指定したものを示します 54 00:02:53,350 --> 00:02:56,510 特定のパスです ディレクトリあなたに 55 00:02:56,510 --> 00:03:00,800 ルートになりたいです サイト、またはルートページ、 56 00:03:00,800 --> 00:03:05,430 またはフォルダからWebサーバー ファイルを検査し、提供するために開始されます 57 00:03:05,430 --> 00:03:07,850 それらを要求するクライアントにまで。 58 00:03:07,850 --> 00:03:12,110 それでは、ちょうどに、CS50 IDEにオーバーポップましょう これがどのように機能するか、本当に迅速に、あなたを示しています。 59 00:03:12,110 --> 00:03:30,930 60 00:03:30,930 --> 00:03:36,240 >> だからここCS50のIDEで、私がいますよ 週ゼロナインと呼ばれるディレクトリ。 61 00:03:36,240 --> 00:03:38,890 そして私は私が持っているtwo--持っています 単にlsコマンドを実行 62 00:03:38,890 --> 00:03:41,910 上記の私が持っていることを示すために ここに2つのディレクトリ、PHP、 63 00:03:41,910 --> 00:03:46,410 私が使用したファイルのセットがあります PHPの構文ビデオ、その後、PHP-ウェブ、 64 00:03:46,410 --> 00:03:49,380 ファイルのセットはである私 このビデオで使用したいと思います。 65 00:03:49,380 --> 00:03:53,480 >> そして、私は開始したいと思います Webサーバインスタンス 66 00:03:53,480 --> 00:03:59,089 PHP-webフォルダの内容 ファイルがアップサービスされているとおりです。 67 00:03:59,089 --> 00:04:00,130 だから私は何をするつもり? 68 00:04:00,130 --> 00:04:05,710 私はapache50スペースを入力しようとして 、宇宙PHP、ダッシュウェブを開始します。 69 00:04:05,710 --> 00:04:08,100 それはディレクトリへのパスです 私は現在、午前場所から。 70 00:04:08,100 --> 00:04:09,127 それから私は、Enterキーを押します。 71 00:04:09,127 --> 00:04:10,960 これは何をするだろう ここでものを少し。 72 00:04:10,960 --> 00:04:14,030 そして、それは言うために起こっています、 Apacheが正常に起動しました。 73 00:04:14,030 --> 00:04:20,689 あなたのサイトはat--使用可能になり、 その後、サイトのURLがあります。 74 00:04:20,689 --> 00:04:21,730 だから私は何をするつもり? 75 00:04:21,730 --> 00:04:26,234 私はすぐにこれをコピーするつもりです。 76 00:04:26,234 --> 00:04:28,900 そして、私はup--開き、するつもりです 私は少しズームアウトしますhere-- 77 00:04:28,900 --> 00:04:31,570 私は開くつもりです Chromeで新しいタブ。 78 00:04:31,570 --> 00:04:34,320 そして、私はそのURLを訪問するつもりです。 79 00:04:34,320 --> 00:04:35,299 >> 私はEnterキーを押しますするつもりです。 80 00:04:35,299 --> 00:04:36,090 これは、ロードするために起こっています。 81 00:04:36,090 --> 00:04:37,510 そして私は再びズームアウトします。 82 00:04:37,510 --> 00:04:41,350 そして、私たちはここで見ることができますです 私のPHPのWebディレクトリの内容。 83 00:04:41,350 --> 00:04:45,290 >> だから今は基本的に何が起こっているのか ここCS50 IDEの私のインスタンスがあり、 84 00:04:45,290 --> 00:04:49,620 これらのファイルを提供しています それらを要求します誰。 85 00:04:49,620 --> 00:04:51,620 そしてもちろん、オーバー このビデオでは、我々は一種のよ 86 00:04:51,620 --> 00:04:55,400 これらの束を見てみましょう コンテキスト内の異なるファイル。 87 00:04:55,400 --> 00:04:57,614 >> あなたのApacheのことをテストするには サーバが動作しています、 88 00:04:57,614 --> 00:04:59,780 一般的に起こっています CS50 IDEのケースのように、 89 00:04:59,780 --> 00:05:02,696 しかし、あなたはより一般的にこれを行う場合、 あなたは、あなた自身のウェブの構築を開始 90 00:05:02,696 --> 00:05:04,990 サーバーは、本当にあります アナログの共通の並べ替え、 91 00:05:04,990 --> 00:05:08,500 通常の "Hello World" PHPのWeb開発のために使用。 92 00:05:08,500 --> 00:05:12,855 ファイルを持つことです ちょうどこのcode--から成ります 93 00:05:12,855 --> 00:05:18,247 PHP情報を設定し、PHPの区切り文字、 括弧、間にセミコロン。 94 00:05:18,247 --> 00:05:20,580 どちらが、基本的には特別です 示していますPHPの関数 95 00:05:20,580 --> 00:05:23,970 あなたが実行しているPHPのバージョン。 96 00:05:23,970 --> 00:05:26,850 >> だからCS50 IDEで、私が持っています 利用可能なそのファイルだけ 97 00:05:26,850 --> 00:05:28,680 これがどのように見えるかをお見せします。 98 00:05:28,680 --> 00:05:32,860 だから、私は、インデックスで探しています 私のPHPインスタンスから。 99 00:05:32,860 --> 00:05:35,870 私のApacheインスタンスが実行されています PHP-ウェブの内容。 100 00:05:35,870 --> 00:05:39,290 そして、私は、ファイルがここにinfo.phpを呼ばれています。 101 00:05:39,290 --> 00:05:41,164 >> 私はそれをクリックし、ズームアウトするつもりです。 102 00:05:41,164 --> 00:05:43,080 これは、あなたが行っているものです かなり多く、確認してください。 103 00:05:43,080 --> 00:05:45,729 これはちょうどことを私に語っています 私のApacheサーバが動作しています。 104 00:05:45,729 --> 00:05:48,270 そして、これは、明らかに、あります 私が実行しているPHPのバージョン。 105 00:05:48,270 --> 00:05:51,590 これはに私のアナログでの "Hello World。" 106 00:05:51,590 --> 00:05:53,070 >> だから私は物事が動作している知っています。 107 00:05:53,070 --> 00:05:54,150 だから我々は行ってもいいです。 108 00:05:54,150 --> 00:05:55,730 我々はここから進むことができます。 109 00:05:55,730 --> 00:05:57,790 >> それでは、それを再検討しましょう 私たちがした時の例 110 00:05:57,790 --> 00:06:01,950 私たちの貧しいウェブマスターとの話 誰が常にページを更新しなければなりませんでした。 111 00:06:01,950 --> 00:06:05,020 これは、どのようにのための修正であるかもしれません 私は物事を実装するだろう 112 00:06:05,020 --> 00:06:08,080 ウェブマスターはしませんでしたように、 時間を更新し続ける必要があります。 113 00:06:08,080 --> 00:06:10,270 それはちょうど一種のだろう 自動的に行われます。 114 00:06:10,270 --> 00:06:13,710 >> 以下のダウン、HTML、それはです 1つの例外を除いて、かなり類似しました。 115 00:06:13,710 --> 00:06:16,720 しかし、ここで私が一番上にあるいくつかのPHPを持っています。 116 00:06:16,720 --> 00:06:19,940 私は、明らかに、これを求めています 関数date_default_timezone_set。 117 00:06:19,940 --> 00:06:22,106 >> そして、我々はについてのすべての話をしません CS50でこれらの機能、 118 00:06:22,106 --> 00:06:24,670 PHPはおそらく持っているので、 数万。 119 00:06:24,670 --> 00:06:27,540 それが少しあるかもしれません 誇張が、それができない場合があります。 120 00:06:27,540 --> 00:06:29,490 それが組み込まれ多くの機能を持っています。 121 00:06:29,490 --> 00:06:33,290 そして、これは明らかに関数であります 米国/東部としての私のタイムゾーンを設定し、 122 00:06:33,290 --> 00:06:36,320 これは私はタイムゾーン 現在、この動画を作りました。 123 00:06:36,320 --> 00:06:38,430 >> それから私は、呼び出しを行います 日付、呼び出される関数です。 124 00:06:38,430 --> 00:06:43,850 そして、どうやら、私は記憶しています 彼の時間、と呼ばれるものの。 125 00:06:43,850 --> 00:06:45,320 それでは、ここで起こっているの? 126 00:06:45,320 --> 00:06:48,040 >> まあ、基本的には何が されて起こって、私は電話を作ってるんです 127 00:06:48,040 --> 00:06:51,650 に起こっているいくつかのサーバに 時間は、現在あるものを私に教えてください。 128 00:06:51,650 --> 00:06:56,150 そして、私は形式に変換してい 時間、分、秒。 129 00:06:56,150 --> 00:07:00,540 そして、それは資本Hだ理由はこれです 12、私は24時間の時間を与えないだろう 130 00:07:00,540 --> 00:07:02,362 小文字の時間になる時間の時間、。 131 00:07:02,362 --> 00:07:04,570 そして、私はちょうどそれを格納しています 時間と呼ばれる変数です。 132 00:07:04,570 --> 00:07:07,028 だから、PHPの2行目 そこに、関数の呼び出し、 133 00:07:07,028 --> 00:07:09,037 日付、ちょうどなっています いくつかの文字列であり、 134 00:07:09,037 --> 00:07:12,120 私に日付を与えるつもり、と 時間、およびその他の情報の束。 135 00:07:12,120 --> 00:07:16,480 そして、そこに最初の引数は、彼のこと、 ただ重要な部分を抽出しています 136 00:07:16,480 --> 00:07:20,614 私はこの例の気にすることを、 その時、分、秒です。 137 00:07:20,614 --> 00:07:22,030 だから、起こっていることすべてです。 138 00:07:22,030 --> 00:07:23,562 だから私は、格納する変数$時間のこと。 139 00:07:23,562 --> 00:07:25,270 そして、ダウン時 私は、そこに非常に底 140 00:07:25,270 --> 00:07:28,980 そのための速記を持っています 現在の時刻をプリントアウトします。 141 00:07:28,980 --> 00:07:32,050 だから、僕は印刷するつもりです 現在の時刻が何であるかを。 142 00:07:32,050 --> 00:07:37,220 >> それでは、この中を見てみましょう CS50 IDEと私たちが今しているかを確認 143 00:07:37,220 --> 00:07:40,002 そのウェブマスターに多くの問題を節約できます。 144 00:07:40,002 --> 00:07:42,570 すべての権利なので、ここで私は再び午前 バックルートディレクトリで 145 00:07:42,570 --> 00:07:45,040 私のApacheインスタンスの。 146 00:07:45,040 --> 00:07:51,585 そして、私はここにファイルと呼ばれるtime.phpを持っています。 147 00:07:51,585 --> 00:07:53,559 私はちょうどそれをクリックするつもりです。 148 00:07:53,559 --> 00:07:55,850 そして、私はので、上にスクロールします 私たちはかなり遠くにズームしています。 149 00:07:55,850 --> 00:07:57,257 現在の時刻が午前14時20分34秒です。 150 00:07:57,257 --> 00:07:59,090 だから私はそれを時間をやっています、 分、秒。 151 00:07:59,090 --> 00:08:01,910 そして、私はリフレッシュすることができます ページと新しい時間を取得します。 152 00:08:01,910 --> 00:08:02,420 --41。 153 00:08:02,420 --> 00:08:07,240 私はページを更新するつもりです そして、新しい時間、44、46、47を得ます。 154 00:08:07,240 --> 00:08:10,490 >> だから、私は明らかにないです 自分は何も変更。 155 00:08:10,490 --> 00:08:11,720 私はこちらのページを更新しています。 156 00:08:11,720 --> 00:08:13,711 だから私はそれを編集して戻ってそこにすることはできません。 157 00:08:13,711 --> 00:08:15,710 そして、私はあなたを約束し、私はしないでください いずれかの同盟国を持っています 158 00:08:15,710 --> 00:08:18,230 ファイルを編集している人 側の私に代わって。 159 00:08:18,230 --> 00:08:21,260 >> 私はちょうど、そのPHPの関数を使用しています 私のための時間を生成するための時間、 160 00:08:21,260 --> 00:08:22,340 自動的に。 161 00:08:22,340 --> 00:08:24,800 、私は眠ってる場合でも、だから そして、私のWebサーバが実行されています、 162 00:08:24,800 --> 00:08:28,884 そのページを訪れたユーザーはまだです 正確に現在の時刻を取得するつもり。 163 00:08:28,884 --> 00:08:29,800 だから、かなり良いです。 164 00:08:29,800 --> 00:08:33,609 私のサイトは、よりダイナミック作りました 過言ではないPHPコードと。 165 00:08:33,609 --> 00:08:36,650 これは、コードの2行だけだったと print文を少し。 166 00:08:36,650 --> 00:08:38,441 そして、すでに私が持っています はるかにダイナミックなサイト 167 00:08:38,441 --> 00:08:42,750 その最初の例よりも、私たちは見ました ビデオの冒頭に。 168 00:08:42,750 --> 00:08:46,660 >> だから、PHPの構文のビデオからリコール PHPインタプリタの実行時にその 169 00:08:46,660 --> 00:08:50,000 私たちのプログラムは、それがすべてを無視します それは、PHPの区切り文字の中にはありません 170 00:08:50,000 --> 00:08:51,500 それを吐き。 171 00:08:51,500 --> 00:08:54,410 その例では、どのようなもの それが吐きれたことを、HTMLました。 172 00:08:54,410 --> 00:08:58,080 そして、これは私が今できることを意味します 一緒にHTMLとPHPをまき散らします。 173 00:08:58,080 --> 00:09:01,920 インタプリタはちょうどなるため HTMLと文字通り出力それを無視します。 174 00:09:01,920 --> 00:09:04,140 右、良いどれですか? 175 00:09:04,140 --> 00:09:06,100 >> おそらく、 一日の終わりに、 176 00:09:06,100 --> 00:09:08,360 私はに私のサイトを希望します HTMLで構成すること。 177 00:09:08,360 --> 00:09:12,880 任意のWebブラウザが解釈できるように、 それは、ページのHTMLを理解します 178 00:09:12,880 --> 00:09:17,270 私たちのものとしてそれをレンダリング 実際に人間として理解することができます。 179 00:09:17,270 --> 00:09:19,430 そして、私はPHPを使用することができます 私のサイトの部品の 180 00:09:19,430 --> 00:09:23,390 私を必要とする必要ダイナミズム、 常に更新し、物事を持っています。 181 00:09:23,390 --> 00:09:26,630 静的情報 同じ滞在することができます。 182 00:09:26,630 --> 00:09:27,540 >> [OK]を、ので、それは大丈夫です。 183 00:09:27,540 --> 00:09:28,540 しかし、なぜ私はこれをしますか? 184 00:09:28,540 --> 00:09:30,400 なぜ私は、HTMLやPHPを混ぜるでしょうか? 185 00:09:30,400 --> 00:09:33,850 私は、すべてのプリントアウトができました HTML、PHPの印刷機能を使用して。 186 00:09:33,850 --> 00:09:35,870 なぜ私はそれをやっていないのですか? 187 00:09:35,870 --> 00:09:37,100 第二のためにそれについて考えてみよう。 188 00:09:37,100 --> 00:09:41,220 >> なぜ、私はちょうど私がout--印刷することができたとき ちょうど言うPHPの行を持つことができ、 189 00:09:41,220 --> 00:09:43,841 印刷HTMLタグ、プリントヘッド。 190 00:09:43,841 --> 00:09:44,840 なぜ私はそれをやっていないのですか? 191 00:09:44,840 --> 00:09:48,230 なぜ私はPHPとHTMLを混合していますか? 192 00:09:48,230 --> 00:09:50,080 >> さて、あなたは思われる場合 それについて秒。 193 00:09:50,080 --> 00:09:52,824 PHPは、インタプリタが持ちます それは見るものを解釈します。 194 00:09:52,824 --> 00:09:54,990 そしてそれは、持っているために起こっています コードの行を実行します。 195 00:09:54,990 --> 00:09:56,450 HTMLを出力します。 196 00:09:56,450 --> 00:09:57,700 オープンヘッドタグを出力します。 197 00:09:57,700 --> 00:09:58,969 オープンタイトルタグを出力します。 198 00:09:58,969 --> 00:10:00,760 それはしているつもりです 実行し、解釈 199 00:10:00,760 --> 00:10:02,671 方法の一つ一つのステップという。 200 00:10:02,671 --> 00:10:04,670 理由だけではなくせありません インタプリタは、ちょうどごまかします 201 00:10:04,670 --> 00:10:06,878 それは理解していないもの そして、、自動的にそれを行いますか? 202 00:10:06,878 --> 00:10:11,365 それは私に多くの時間を節約するために起こっています 一緒に私のHTMLとPHPを混合します。 203 00:10:11,365 --> 00:10:16,220 >> 我々がない理由となるようです ちょうどオープンPHPの区切り文字を持っています 204 00:10:16,220 --> 00:10:19,450 して、ちょうど全体を印刷 1つの巨大なPHPなどのページの内容 205 00:10:19,450 --> 00:10:24,330 その後、機能への印刷を呼び出し、 近くにPHPの区切り文字と我々が行っています。 206 00:10:24,330 --> 00:10:27,620 私たちは一緒にそれらをミックスだから、なぜです。 207 00:10:27,620 --> 00:10:32,345 >> これまでのところ、我々はあまりにも多くのを見ていません 一般的なPHPの構文との違い。 208 00:10:32,345 --> 00:10:33,720 これは非常に単純されています。 209 00:10:33,720 --> 00:10:35,553 我々はすでに見てきました 疑問符、同等。 210 00:10:35,553 --> 00:10:39,012 私たちは、新しい関数呼び出しのカップルを見て、 本当に空想何が起こっていません。 211 00:10:39,012 --> 00:10:40,720 のは多分ものを作ってみましょう 少し手の込んだ。 212 00:10:40,720 --> 00:10:44,360 私たちは、情報を渡す場合 別のPHPファイルとの間に、 213 00:10:44,360 --> 00:10:47,280 多分ユーザーはできるように 私に情報を送信します。 214 00:10:47,280 --> 00:10:50,230 そして、私は何かを行うことができます それ別のページ上で。 215 00:10:50,230 --> 00:10:52,990 >> だから、PHPはをサポートしています スーパーグローバルと呼ばれるもの 216 00:10:52,990 --> 00:10:55,297 かなり素晴らしいですね変数、。 217 00:10:55,297 --> 00:10:57,130 彼らは本当にしています 巨大な連想配列 218 00:10:57,130 --> 00:10:59,900 それは、この実装を支援 通過の機能 219 00:10:59,900 --> 00:11:05,010 そのPHPファイル間の情報 弊社のWebサーバー上に存在しています。 220 00:11:05,010 --> 00:11:07,760 >> これらのスーパーの最初の グローバルは、$ _GETと呼ばれています。 221 00:11:07,760 --> 00:11:10,140 そして、それはおそらくです 理解するための最も簡単な。 222 00:11:10,140 --> 00:11:12,430 何が$ _GETとどうなりますか? 223 00:11:12,430 --> 00:11:16,240 まあ、基本的には、ユーザーがあります 余分な情報を入力しようとして 224 00:11:16,240 --> 00:11:18,390 私たちのURLの末尾に。 225 00:11:18,390 --> 00:11:21,460 そして、彼らはどのようなタイプ、と仮定すると それは、特定の方法でフォーマットされています 226 00:11:21,460 --> 00:11:25,830 ちょうどである、クエリ文字列と呼ばれます キー値ペアのセットを分離 227 00:11:25,830 --> 00:11:27,810 アンパサンドで。 228 00:11:27,810 --> 00:11:32,362 これらのキーと値のペアは次のようになります $ _GET連想配列に格納されています。 229 00:11:32,362 --> 00:11:34,070 そして、上の私たちのビデオから PHPの構文は、我々は知っています 230 00:11:34,070 --> 00:11:40,080 を操作する方法 すでに連想配列。 231 00:11:40,080 --> 00:11:44,090 だからここの例であり、 多分私はいくつかのPHP、 232 00:11:44,090 --> 00:11:50,180 キーと値のペアのすべてを抽出します ユーザーがURLに供給されます。 233 00:11:50,180 --> 00:11:51,970 だから、私はオープンPHPの区切り文字を持っています。 234 00:11:51,970 --> 00:11:53,410 私は、foreachループを持っています。 235 00:11:53,410 --> 00:11:57,410 私はスーパー渡って反復処理してい グローバル配列は、$ _GETと呼ばれます。 236 00:11:57,410 --> 00:12:00,160 >> そして、私は参照できるようにしたいです キーと値の両方に。 237 00:12:00,160 --> 00:12:02,410 そして、私はちょうどそれらを印刷しています うち、上の各1明らかに 238 00:12:02,410 --> 00:12:03,780 ここに、独自の段落タグ。 239 00:12:03,780 --> 00:12:07,620 私はいくつかのHTMLをプリントアウトしています そして、値を補間 240 00:12:07,620 --> 00:12:12,900 その文にキーと値の。 241 00:12:12,900 --> 00:12:16,980 >> それでは、どのようにこれを見てみましょう 実際に私たちのIDEで動作します。 242 00:12:16,980 --> 00:12:18,980 そして多分これは役立ちます 少し説明 243 00:12:18,980 --> 00:12:21,880 実際にやっている何を得るの。 244 00:12:21,880 --> 00:12:23,610 だから私はここに私のWebルートに戻ってきました。 245 00:12:23,610 --> 00:12:25,318 そして、私はズームインよ 少しはあなたを表示します 246 00:12:25,318 --> 00:12:28,620 私は、get1.phpというファイルを持っています。 247 00:12:28,620 --> 00:12:31,830 >> それでは、get1.phpをクリックしてみましょう。 248 00:12:31,830 --> 00:12:36,600 そして、私は、任意のコンテンツを見ていませんよ。 249 00:12:36,600 --> 00:12:38,390 それは右、奇妙な? 250 00:12:38,390 --> 00:12:39,740 まあ、それは本当に実際に。 251 00:12:39,740 --> 00:12:42,030 私は提供しなかったため、 URLで何か。 252 00:12:42,030 --> 00:12:46,270 私はget1.phpに行くが、私です 任意のキーと値のペアを提供していませんでした 253 00:12:46,270 --> 00:12:47,450 私のクエリ文字列の一部として。 254 00:12:47,450 --> 00:12:50,510 それでは、クエリ文字列を追加してみましょう このファイルには何ができるかを参照してください。 255 00:12:50,510 --> 00:12:53,040 >> クエリ文字列を開始するには、あなた ただ疑問符を入力します。 256 00:12:53,040 --> 00:13:00,820 その後、多分私は名前=ダグ&年= 2015を言いますよ。 257 00:13:00,820 --> 00:13:02,914 そして私は、Enterキーを押します。 258 00:13:02,914 --> 00:13:04,080 今何が起こっているかがわかります。 259 00:13:04,080 --> 00:13:05,480 私はget1.phpまだです。 260 00:13:05,480 --> 00:13:08,445 しかし、今、私は与えてきました キーと値のペアは、と私はよ 261 00:13:08,445 --> 00:13:14,940 自分自身でそれらをプリントアウト paragraph--名、Doug--年、2015年。 262 00:13:14,940 --> 00:13:17,970 それはまさに、コードだけで私たちです 少し前のスライドで見ました。 263 00:13:17,970 --> 00:13:22,290 >> そして、私は多分別のものを追加したい場合 キーと値のペア、およびクラス= CS50。 264 00:13:22,290 --> 00:13:25,325 265 00:13:25,325 --> 00:13:27,580 今、私は別のキー値を持ちます プリントアウトしていますペア 266 00:13:27,580 --> 00:13:30,025 とき、私はもう一度、URLを再訪。 267 00:13:30,025 --> 00:13:31,900 今、多分これではありません ものすごくよくフォーマットされています。 268 00:13:31,900 --> 00:13:33,660 だから私はget.phpの別のバージョンがあります。 269 00:13:33,660 --> 00:13:36,350 それはget2.phpです。 270 00:13:36,350 --> 00:13:39,070 >> この差 一つは、私はCSSファイルを持っています、 271 00:13:39,070 --> 00:13:41,690 それがAのものをフォーマット もう少しうまく私のため。 272 00:13:41,690 --> 00:13:43,940 それは、多分ほとんどありません 世界の美しいCSS。 273 00:13:43,940 --> 00:13:45,650 しかし、それはそれを行うためのもうひとつの方法です。 274 00:13:45,650 --> 00:13:52,840 だから私はまだアクセスを得ることができます $ _GETを使用して、私の変数へ。 275 00:13:52,840 --> 00:13:56,610 そして、この場合には、私は一種のです CSSはもう少し凝った作り。 276 00:13:56,610 --> 00:13:58,360 そして、我々はにオーバーポップ場合 第二のための私のIDE、 277 00:13:58,360 --> 00:14:06,870 私はPHPのWebであなたを紹介します ここでは、ディレクトリ、get2.php。 278 00:14:06,870 --> 00:14:10,010 ここでは、いくつかのHTMLをそれを開くでしょう。 279 00:14:10,010 --> 00:14:13,220 どうやら私はそれにリンクしてい 私が話していたCSSファイル。 280 00:14:13,220 --> 00:14:14,570 私は、テーブルタグを開きます。 281 00:14:14,570 --> 00:14:15,970 そして、ここに私のforeachループです。 282 00:14:15,970 --> 00:14:18,450 >> ここで、その何 前のスライドに示しました。 283 00:14:18,450 --> 00:14:21,007 唯一の違いは、私です このキーと値のCSSを持っています 284 00:14:21,007 --> 00:14:22,340 私はそれに適用していたスタイリング。 285 00:14:22,340 --> 00:14:25,622 しかし、それは、私がやっているすべての私はされるのです すべて取得するために$ _GET渡って繰り返し処理 286 00:14:25,622 --> 00:14:26,580 キーと値のペアの。 287 00:14:26,580 --> 00:14:28,890 >> そして、私はテーブルとして、それらをプリントアウトしています。 288 00:14:28,890 --> 00:14:33,230 そして、どうやら、私はキーをフォーマットしてい 片道で、