1 00:00:00,000 --> 00:00:05,720 2 00:00:05,720 --> 00:00:07,620 >> DOUG LLOYD: Vì vậy, trong chúng tôi video trên PHP cú pháp, 3 00:00:07,620 --> 00:00:10,480 chúng tôi nói chuyện rất nhiều về cách PHP có thể được sử dụng tại các dòng lệnh 4 00:00:10,480 --> 00:00:13,620 để chạy các chương trình trong một cách mà chúng tôi đang khá quen thuộc với từ C. 5 00:00:13,620 --> 00:00:15,370 Nhưng như tôi cũng đã đề cập trong đó video, PHP 6 00:00:15,370 --> 00:00:19,572 bước đầu đã được phát triển để thực hiện lập trình web, các trang web. 7 00:00:19,572 --> 00:00:21,780 Và như vậy trong video này chúng tôi sẽ nói về cách chúng tôi 8 00:00:21,780 --> 00:00:23,890 sử dụng PHP trong bối cảnh phát triển web. 9 00:00:23,890 --> 00:00:26,360 >> Chúng tôi biết, đã có, từ video của chúng tôi trên HTML, 10 00:00:26,360 --> 00:00:29,820 rằng các trang web được xây dựng ra một tập hợp các thẻ HTML 11 00:00:29,820 --> 00:00:32,850 mà ngữ nghĩa xác định cấu trúc của một trang web. 12 00:00:32,850 --> 00:00:35,910 Nhưng các trang web mà được xây dựng với tinh khiết HTML 13 00:00:35,910 --> 00:00:39,510 bị một rất, hạn chế rất nghiêm trọng. 14 00:00:39,510 --> 00:00:42,690 >> Và để minh họa cho sự hạn chế này, chúng ta hãy xem xét những điều sau đây. 15 00:00:42,690 --> 00:00:45,665 Vì vậy, bây giờ tôi muốn xây dựng một trang web rằng, bất cứ khi nào người dùng truy cập nó, 16 00:00:45,665 --> 00:00:49,760 nó mang lại cho tôi hiện nay Hiện tại Cambridge, Mass., 17 00:00:49,760 --> 00:00:52,620 hiển thị nó cho phút mới nhất. 18 00:00:52,620 --> 00:00:57,910 Nếu tôi đã làm điều này ngay bây giờ, Tôi có thể nói một cái gì đó như thế này. 19 00:00:57,910 --> 00:01:01,330 Thời gian hiện tại trong Cambridge-- vì vậy tôi có Thẻ HTML, thẻ đầu, thẻ tiêu đề, 20 00:01:01,330 --> 00:01:04,610 cơ thể tags-- hiện nay Hiện tại là 14:08 Cambridge, 21 00:01:04,610 --> 00:01:06,690 in ra thời gian quân sự. 22 00:01:06,690 --> 00:01:11,390 >> Điều gì xảy ra nếu nó bây giờ 02:09, 14:09? 23 00:01:11,390 --> 00:01:16,470 Vâng cho đến nay, với HTML, tôi có đi vào và thay đổi nó để 14:09. 24 00:01:16,470 --> 00:01:19,390 Và sau đó một phút sau, Tôi phải thay đổi nó một lần nữa. 25 00:01:19,390 --> 00:01:22,132 Và sau đó một phút sau, Tôi phải thay đổi nó một lần nữa. 26 00:01:22,132 --> 00:01:24,590 Và như bạn có thể tưởng tượng, đó là có lẽ là công việc tồi tệ nhất bao giờ hết. 27 00:01:24,590 --> 00:01:29,420 Bạn là người quản trị trang web cho một trang web, và mỗi phút, 24 giờ một ngày, 28 00:01:29,420 --> 00:01:35,970 bạn cần phải cập nhật thời điểm hiện tại tự mở time.html và thay đổi 29 00:01:35,970 --> 00:01:41,750 Chỉ là đoạn mã để nói thời gian hiện tại trong giờ và phút. 30 00:01:41,750 --> 00:01:45,850 Đó có lẽ không phải là một rất sử dụng tốt các nguồn lực của chúng tôi, 31 00:01:45,850 --> 00:01:48,880 cả con người và tính toán. 32 00:01:48,880 --> 00:01:51,297 >> Các trang web có tất cả HTML là hoàn toàn tĩnh. 33 00:01:51,297 --> 00:01:53,630 Cách duy nhất bạn có thể cập nhật nội dung, như chúng ta đã thấy, 34 00:01:53,630 --> 00:01:56,339 là để tự mở những nguồn các tập tin, chỉnh sửa, và lưu chúng. 35 00:01:56,339 --> 00:01:58,088 Và sau đó khi người dùng làm mới trang, 36 00:01:58,088 --> 00:02:01,080 hoặc thăm trang để là người đầu tiên thời gian, họ sẽ nhận được những nội dung mới nhất. 37 00:02:01,080 --> 00:02:03,970 Nhưng chỉ vì chúng tôi đã tự chỉnh sửa nó. 38 00:02:03,970 --> 00:02:07,980 >> Nếu chúng ta bắt đầu kết hợp một số PHP trong đó, mã của chúng tôi có thể nhận được rất nhiều linh hoạt hơn. 39 00:02:07,980 --> 00:02:11,940 Và chúng ta có thể có một cách để trang của chúng tôi phải năng động, hoặc tự cập nhật, 40 00:02:11,940 --> 00:02:15,360 mà không yêu cầu người nghèo của chúng tôi webmaster trong các ví dụ trước 41 00:02:15,360 --> 00:02:16,662 để được tự cập nhật mọi thứ. 42 00:02:16,662 --> 00:02:17,870 Họ có thể làm điều đó tự động. 43 00:02:17,870 --> 00:02:19,130 Chúng tôi không cần phải can thiệp. 44 00:02:19,130 --> 00:02:20,410 Chúng tôi có thể nhận được một số giấc ngủ. 45 00:02:20,410 --> 00:02:24,850 Mà có lẽ là một điều tốt nếu bạn đang làm rất nhiều về lập trình web. 46 00:02:24,850 --> 00:02:28,360 >> Vì vậy, trong CS50 IDE, chúng tôi chạy một máy chủ web được gọi là Apache. 47 00:02:28,360 --> 00:02:35,250 Đó là một rất thường được sử dụng, mã nguồn mở hệ thống máy chủ web. 48 00:02:35,250 --> 00:02:37,320 Hệ thống này có năng lực để giải thích 49 00:02:37,320 --> 00:02:41,260 PHP, đó là sẽ có ích nếu bạn muốn làm bất kỳ lập trình PHP. 50 00:02:41,260 --> 00:02:45,230 >> Và trong CS50 IDE, chúng tôi có một lệnh để thực hiện điều này rất dễ dàng để làm, 51 00:02:45,230 --> 00:02:47,280 apache50 bắt đầu. 52 00:02:47,280 --> 00:02:49,445 Và sau đó là dấu gạch chéo con đường, dấu gạch chéo để, dấu gạch chéo 53 00:02:49,445 --> 00:02:53,350 dir, đó chỉ là một cách thực sự phổ biến của chỉ ra những gì bạn đã quy định ở đây 54 00:02:53,350 --> 00:02:56,510 là một đường dẫn đến một đặc biệt thư mục mà bạn 55 00:02:56,510 --> 00:03:00,800 muốn là người gốc trang web, hoặc các trang gốc, 56 00:03:00,800 --> 00:03:05,430 hoặc thư mục mà từ đó máy chủ web của bạn sẽ bắt đầu kiểm tra các tập tin và phục vụ 57 00:03:05,430 --> 00:03:07,850 họ lên các khách hàng yêu cầu họ. 58 00:03:07,850 --> 00:03:12,110 Vì vậy, hãy bật hơn để CS50 IDE, chỉ để cho bạn thấy, thực sự nhanh chóng, cách làm việc này. 59 00:03:12,110 --> 00:03:30,930 60 00:03:30,930 --> 00:03:36,240 >> Vì vậy, ở đây trong CS50 IDE, tôi đang ở trong một thư mục gọi là Tuần Zero, Nine. 61 00:03:36,240 --> 00:03:38,890 Và tôi có two-- Tôi có thực thi một lệnh LS chỉ 62 00:03:38,890 --> 00:03:41,910 ở trên để cho bạn thấy rằng tôi có hai thư mục ở đây, PHP, 63 00:03:41,910 --> 00:03:46,410 đó là tập hợp các tập tin mà tôi được sử dụng trong video cú pháp PHP, và sau đó PHP-web, 64 00:03:46,410 --> 00:03:49,380 đó là tập hợp các tập tin mà tôi muốn sử dụng trong video này. 65 00:03:49,380 --> 00:03:53,480 >> Và tôi muốn bắt đầu một ví dụ máy chủ web 66 00:03:53,480 --> 00:03:59,089 với các nội dung của thư mục PHP-web như các tập tin đang được phục vụ lên. 67 00:03:59,089 --> 00:04:00,130 Vì vậy, những gì tôi sẽ làm gì? 68 00:04:00,130 --> 00:04:05,710 Tôi sẽ gõ apache50 gian bắt đầu, không gian PHP, dash web. 69 00:04:05,710 --> 00:04:08,100 Đó là con đường dẫn đến thư mục từ nơi tôi hiện nay. 70 00:04:08,100 --> 00:04:09,127 Sau đó tôi nhấn Enter. 71 00:04:09,127 --> 00:04:10,960 Nó sẽ làm một chút chút về công cụ ở đây. 72 00:04:10,960 --> 00:04:14,030 Và sau đó nó sẽ nói, Apache bắt đầu thành công. 73 00:04:14,030 --> 00:04:20,689 Trang web của bạn bây giờ đã có at-- và sau đó có các URL cho trang web. 74 00:04:20,689 --> 00:04:21,730 Vì vậy, những gì tôi sẽ làm gì? 75 00:04:21,730 --> 00:04:26,234 Tôi sẽ nhanh chóng sao chép này. 76 00:04:26,234 --> 00:04:28,900 Và tôi sẽ mở up-- và Tôi sẽ phóng to ra một chút here-- 77 00:04:28,900 --> 00:04:31,570 Tôi sẽ mở ra một tab mới trong Chrome. 78 00:04:31,570 --> 00:04:34,320 Và tôi sẽ đến thăm URL đó. 79 00:04:34,320 --> 00:04:35,299 >> Tôi sẽ nhấn Enter. 80 00:04:35,299 --> 00:04:36,090 Nó sẽ load. 81 00:04:36,090 --> 00:04:37,510 Và tôi sẽ thu nhỏ lại. 82 00:04:37,510 --> 00:04:41,350 Và chúng ta có thể thấy ở đây là nội dung của thư mục web PHP của tôi. 83 00:04:41,350 --> 00:04:45,290 >> Vì vậy, bây giờ những gì là cơ bản xảy ra ở đây là, ví dụ của tôi về CS50 IDE 84 00:04:45,290 --> 00:04:49,620 đang phục vụ lên các tập tin này ai yêu cầu chúng. 85 00:04:49,620 --> 00:04:51,620 Và trong quá trình video này, chúng tôi sẽ sắp xếp của 86 00:04:51,620 --> 00:04:55,400 hãy nhìn vào một bó của các tập tin khác nhau trong ngữ cảnh. 87 00:04:55,400 --> 00:04:57,614 >> Để kiểm tra rằng Apache của bạn máy chủ đang làm việc, 88 00:04:57,614 --> 00:04:59,780 mà nói chung là đi là trường hợp trong CS50 IDE, 89 00:04:59,780 --> 00:05:02,696 nhưng nếu bạn làm điều này nói chung, và bạn bắt đầu xây dựng trang web riêng của bạn 90 00:05:02,696 --> 00:05:04,990 máy chủ, có một thực sự loại phổ biến của tương tự để, 91 00:05:04,990 --> 00:05:08,500 "hello world", mà thường là được sử dụng để phát triển web PHP. 92 00:05:08,500 --> 00:05:12,855 Mà là để có một tập tin chỉ bao gồm các code-- này 93 00:05:12,855 --> 00:05:18,247 một dấu phân cách PHP thiết với thông tin PHP, dấu ngoặc đơn, dấu chấm phẩy ở giữa. 94 00:05:18,247 --> 00:05:20,580 Mà về cơ bản là một đặc biệt PHP chức năng đó cho bạn 95 00:05:20,580 --> 00:05:23,970 những phiên bản của PHP bạn đang chạy. 96 00:05:23,970 --> 00:05:26,850 >> Vì vậy, trong CS50 IDE, tôi có file có sẵn chỉ 97 00:05:26,850 --> 00:05:28,680 để cho bạn thấy những điều này sẽ như thế nào. 98 00:05:28,680 --> 00:05:32,860 Vì vậy, tôi đang nhìn vào chỉ số của tôi từ ví dụ PHP của tôi. 99 00:05:32,860 --> 00:05:35,870 Ví dụ Apache của tôi đang chạy các nội dung của PHP-Web. 100 00:05:35,870 --> 00:05:39,290 Và tôi có một tập tin ở đây được gọi là info.php. 101 00:05:39,290 --> 00:05:41,164 >> Tôi sẽ bấm vào nó, thu nhỏ. 102 00:05:41,164 --> 00:05:43,080 Đây là những gì bạn đang đi để xem, khá nhiều. 103 00:05:43,080 --> 00:05:45,729 Đây chỉ là nói cho tôi rằng máy chủ Apache của tôi đang làm việc. 104 00:05:45,729 --> 00:05:48,270 Và đây là, rõ ràng, phiên bản của PHP rằng tôi đang chạy. 105 00:05:48,270 --> 00:05:51,590 Điều này là tương tự của tôi để "hello thế giới." 106 00:05:51,590 --> 00:05:53,070 >> Vì vậy, tôi biết mọi thứ đang hoạt động. 107 00:05:53,070 --> 00:05:54,150 Vì vậy, chúng tôi đang tốt để đi. 108 00:05:54,150 --> 00:05:55,730 Chúng tôi có thể tiến hành từ đây. 109 00:05:55,730 --> 00:05:57,790 >> Vì vậy, chúng ta hãy xem lại mà thời gian ví dụ chúng tôi 110 00:05:57,790 --> 00:06:01,950 nói về với webmaster nghèo của chúng tôi người đã phải cập nhật các trang liên tục. 111 00:06:01,950 --> 00:06:05,020 Đây có thể là một sửa chữa cho cách Tôi sẽ thực hiện những điều 112 00:06:05,020 --> 00:06:08,080 để các webmaster không phải tiếp tục cập nhật thời gian. 113 00:06:08,080 --> 00:06:10,270 Nó sẽ chỉ là loại xảy ra tự động. 114 00:06:10,270 --> 00:06:13,710 >> Các xuống bên dưới, HTML, nó khá giống nhau, với một ngoại lệ. 115 00:06:13,710 --> 00:06:16,720 Nhưng ở đây tôi đã có một số PHP ở đầu trang. 116 00:06:16,720 --> 00:06:19,940 Tôi đã, rõ ràng, gọi này chức năng date_default_timezone_set. 117 00:06:19,940 --> 00:06:22,106 >> Và chúng tôi không nói về tất cả các chức năng này trong CS50, 118 00:06:22,106 --> 00:06:24,670 vì PHP có lẽ Mười nghìn đồng. 119 00:06:24,670 --> 00:06:27,540 Đó có thể là một chút của một cường điệu, nhưng nó không thể được. 120 00:06:27,540 --> 00:06:29,490 Nó có rất nhiều chức năng được xây dựng trong. 121 00:06:29,490 --> 00:06:33,290 Và vì vậy đây là một chức năng rõ ràng đặt múi giờ của tôi là Mỹ / Đông, 122 00:06:33,290 --> 00:06:36,320 đó là múi giờ mà tôi hiện tại làm cho video này. 123 00:06:36,320 --> 00:06:38,430 >> Sau đó, tôi thực hiện một cuộc gọi đến chức năng gọi, ngày tháng. 124 00:06:38,430 --> 00:06:43,850 Và, rõ ràng, tôi đang lưu trữ HIS của một cái gì đó gọi là, thời gian. 125 00:06:43,850 --> 00:06:45,320 Vì vậy, những gì đang xảy ra ở đây? 126 00:06:45,320 --> 00:06:48,040 >> Vâng, về cơ bản những gì xảy ra là, tôi đang làm cho một cuộc gọi 127 00:06:48,040 --> 00:06:51,650 một số máy chủ có nghĩa là sẽ cho tôi biết những gì thời gian hiện tại là. 128 00:06:51,650 --> 00:06:56,150 Và tôi là chuyển đổi nó sang định dạng giờ, phút, giây. 129 00:06:56,150 --> 00:07:00,540 Và lý do nó vốn là H này là sẽ cho tôi thời gian 24 giờ, không phải 12 130 00:07:00,540 --> 00:07:02,362 Hiện giờ, đó sẽ là chữ thường h. 131 00:07:02,362 --> 00:07:04,570 Và tôi chỉ cần lưu trữ đó trong một biến gọi, thời gian. 132 00:07:04,570 --> 00:07:07,028 Vì vậy, dòng thứ hai của PHP ở đó, các cuộc gọi đến các chức năng, 133 00:07:07,028 --> 00:07:09,037 ngày, chỉ là nhận được một số chuỗi, đó là 134 00:07:09,037 --> 00:07:12,120 sẽ đưa cho tôi ngày đó, và các thời gian, và một loạt các thông tin khác. 135 00:07:12,120 --> 00:07:16,480 Và các đối số đầu tiên ở đó, mà HIS, được chỉ trích các phần quan trọng 136 00:07:16,480 --> 00:07:20,614 mà tôi quan tâm cho ví dụ này, đó là giờ, phút và giây. 137 00:07:20,614 --> 00:07:22,030 Vì vậy, đó là tất cả những gì đang xảy ra. 138 00:07:22,030 --> 00:07:23,562 Vì vậy, tôi lưu trữ trong một thời gian biến $. 139 00:07:23,562 --> 00:07:25,270 Và sau đó xuống rất đáy ở đó, tôi 140 00:07:25,270 --> 00:07:28,980 có mà viết tắt cho in ra thời gian hiện tại. 141 00:07:28,980 --> 00:07:32,050 Vì vậy, tôi chỉ cần đi để in ra những gì thời gian hiện tại là. 142 00:07:32,050 --> 00:07:37,220 >> Vì vậy, chúng ta hãy nhìn vào điều này trong CS50 IDE và xem cách chúng tôi bây giờ 143 00:07:37,220 --> 00:07:40,002 tiết kiệm webmaster rằng rất nhiều rắc rối. 144 00:07:40,002 --> 00:07:42,570 Tất cả các quyền, do đó tôi lại ngồi đây lại ở thư mục gốc 145 00:07:42,570 --> 00:07:45,040 thẩm Apache của tôi. 146 00:07:45,040 --> 00:07:51,585 Và tôi có một tập tin ở đây được gọi là time.php. 147 00:07:51,585 --> 00:07:53,559 Tôi chỉ cần đi để bấm vào đó. 148 00:07:53,559 --> 00:07:55,850 Và tôi sẽ di chuyển lên, bởi vì chúng tôi đang thu nhỏ trong khá xa. 149 00:07:55,850 --> 00:07:57,257 Thời gian hiện tại là 14:20:34. 150 00:07:57,257 --> 00:07:59,090 Vì vậy, tôi đang làm nó giờ, phút và giây. 151 00:07:59,090 --> 00:08:01,910 Và tôi có thể làm mới trang và có được thời gian mới. 152 00:08:01,910 --> 00:08:02,420 --41. 153 00:08:02,420 --> 00:08:07,240 Tôi sẽ làm mới trang và có được thời gian mới, 44, 46, 47. 154 00:08:07,240 --> 00:08:10,490 >> Vì vậy, tôi không rõ thay đổi bất cứ điều gì bản thân mình. 155 00:08:10,490 --> 00:08:11,720 Tôi đang ở đây làm mới trang. 156 00:08:11,720 --> 00:08:13,711 Vì vậy, tôi không thể qua lại có chỉnh sửa nó. 157 00:08:13,711 --> 00:08:15,710 Và tôi hứa với các bạn, tôi không có bất kỳ confederates 158 00:08:15,710 --> 00:08:18,230 người đang chỉnh sửa các tập tin thay mặt cho tôi bên cạnh. 159 00:08:18,230 --> 00:08:21,260 >> Tôi chỉ sử dụng mà chức năng PHP, thời gian, để tạo ra thời gian cho tôi 160 00:08:21,260 --> 00:08:22,340 tự động. 161 00:08:22,340 --> 00:08:24,800 Vì vậy mà ngay cả khi tôi đang ngủ, và máy chủ web của tôi đang chạy, 162 00:08:24,800 --> 00:08:28,884 người sử dụng những người thăm trang đó vẫn là sẽ nhận được chính xác thời gian hiện tại. 163 00:08:28,884 --> 00:08:29,800 Vì vậy, đó là khá tốt. 164 00:08:29,800 --> 00:08:33,609 Tôi đã thực hiện trang web của tôi năng động hơn với không quá nhiều code PHP. 165 00:08:33,609 --> 00:08:36,650 Đó chỉ là hai dòng mã và sau đó một chút của một lệnh in. 166 00:08:36,650 --> 00:08:38,441 Và đã được tôi có một trang web nhiều năng động hơn 167 00:08:38,441 --> 00:08:42,750 hơn so với ví dụ đầu tiên chúng ta đã thấy ở đầu video. 168 00:08:42,750 --> 00:08:46,660 >> Vì vậy, nhớ lại từ video về cú pháp PHP rằng khi các thông dịch viên PHP chạy 169 00:08:46,660 --> 00:08:50,000 Chương trình của chúng tôi, nó bỏ qua tất cả mọi thứ đó không phải là ký tự phân cách bên trong của PHP, 170 00:08:50,000 --> 00:08:51,500 nhổ ra. 171 00:08:51,500 --> 00:08:54,410 Trong ví dụ này, những gì các điều rằng nó đã được phun ra là HTML. 172 00:08:54,410 --> 00:08:58,080 Và điều này có nghĩa là tôi có thể bây giờ vãi ra HTML và PHP với nhau. 173 00:08:58,080 --> 00:09:01,920 Bởi vì các phiên dịch viên sẽ chỉ bỏ qua HTML và nghĩa đen đầu ra nó. 174 00:09:01,920 --> 00:09:04,140 Đó là tốt, phải không? 175 00:09:04,140 --> 00:09:06,100 >> Bởi lẽ, cuối ngày, 176 00:09:06,100 --> 00:09:08,360 Tôi muốn trang web của tôi để được xây dựng bằng HTML. 177 00:09:08,360 --> 00:09:12,880 Vì vậy mà bất kỳ trình duyệt web có thể giải thích nó, hoặc hiểu HTML trên trang 178 00:09:12,880 --> 00:09:17,270 và làm cho nó như là một cái gì đó mà chúng ta thực sự có thể hiểu như con người. 179 00:09:17,270 --> 00:09:19,430 Và tôi chỉ có thể sử dụng PHP cho các bộ phận của trang web của tôi 180 00:09:19,430 --> 00:09:23,390 các yêu cầu năng động, yêu cầu tôi để có những điều mà cập nhật liên tục. 181 00:09:23,390 --> 00:09:26,630 Các thông tin tĩnh có thể ở lại cùng. 182 00:09:26,630 --> 00:09:27,540 >> OK, vì vậy đó là tốt. 183 00:09:27,540 --> 00:09:28,540 Nhưng tại sao tôi làm điều này? 184 00:09:28,540 --> 00:09:30,400 Tại sao tôi sẽ trộn HTML và PHP? 185 00:09:30,400 --> 00:09:33,850 Tôi chỉ có thể in ra tất cả các HTML, cách sử dụng chức năng PHP in. 186 00:09:33,850 --> 00:09:35,870 Tại sao tôi không làm điều đó? 187 00:09:35,870 --> 00:09:37,100 Hãy suy nghĩ về nó cho một thứ hai. 188 00:09:37,100 --> 00:09:41,220 >> Tại sao, khi tôi chỉ có thể in out-- tôi có thể có dòng PHP mà chỉ nói, 189 00:09:41,220 --> 00:09:43,841 tag HTML in, đầu in. 190 00:09:43,841 --> 00:09:44,840 Tại sao tôi không làm điều đó? 191 00:09:44,840 --> 00:09:48,230 Tại sao tôi trộn PHP và HTML? 192 00:09:48,230 --> 00:09:50,080 >> Vâng, nếu bạn nghĩ về nó cho một thứ hai. 193 00:09:50,080 --> 00:09:52,824 PHP, các thông dịch viên có để giải thích những gì nó thấy. 194 00:09:52,824 --> 00:09:54,990 Và do đó, nó sẽ có để thực thi một dòng mã. 195 00:09:54,990 --> 00:09:56,450 In ra HTML. 196 00:09:56,450 --> 00:09:57,700 In thẻ đầu mở. 197 00:09:57,700 --> 00:09:58,969 In thẻ tiêu đề mở. 198 00:09:58,969 --> 00:10:00,760 Nó sẽ phải thực hiện và giải thích 199 00:10:00,760 --> 00:10:02,671 rằng mỗi bước của con đường. 200 00:10:02,671 --> 00:10:04,670 Tại sao không chỉ cho các thông dịch viên chỉ che đậy 201 00:10:04,670 --> 00:10:06,878 điều nó không hiểu và làm điều đó tự động? 202 00:10:06,878 --> 00:10:11,365 Nó sẽ tiết kiệm cho tôi rất nhiều thời gian để trộn HTML của tôi và PHP tôi lại với nhau. 203 00:10:11,365 --> 00:10:16,220 >> Và đó là lý do tại sao chúng ta không làm chỉ có mở PHP delimiter 204 00:10:16,220 --> 00:10:19,450 và sau đó chỉ cần in ra toàn bộ nội dung của các trang của chúng tôi là một trong PHP khổng lồ 205 00:10:19,450 --> 00:10:24,330 gọi đến chức năng, in, và sau đó gần PHP delimiter và chúng tôi đang thực hiện. 206 00:10:24,330 --> 00:10:27,620 Vì vậy, đó là lý do tại sao chúng ta trộn lẫn chúng với nhau. 207 00:10:27,620 --> 00:10:32,345 >> Cho đến nay, chúng tôi đã không nhìn thấy quá nhiều một sự khác biệt từ cú pháp PHP nói chung. 208 00:10:32,345 --> 00:10:33,720 Đó là khá đơn giản. 209 00:10:33,720 --> 00:10:35,553 Chúng ta đã thấy các dấu hỏi, bình đẳng. 210 00:10:35,553 --> 00:10:39,012 Chúng tôi đã nhìn thấy một vài cuộc gọi chức năng mới, nhưng không thực sự ưa thích xảy ra. 211 00:10:39,012 --> 00:10:40,720 Hãy làm những điều có thể một chút fancier. 212 00:10:40,720 --> 00:10:44,360 Điều gì nếu chúng tôi muốn truyền thông tin giữa các file PHP khác nhau, 213 00:10:44,360 --> 00:10:47,280 vì vậy mà có lẽ người dùng có thể gửi thông tin cho tôi. 214 00:10:47,280 --> 00:10:50,230 Và sau đó tôi có thể làm điều gì đó với nó trên một trang khác. 215 00:10:50,230 --> 00:10:52,990 >> Vì vậy, PHP đã hỗ trợ cho một cái gì đó gọi là Super toàn cầu 216 00:10:52,990 --> 00:10:55,297 Biến, mà âm thanh khá tuyệt vời. 217 00:10:55,297 --> 00:10:57,130 Họ thực sự chỉ mảng kết hợp khổng lồ 218 00:10:57,130 --> 00:10:59,900 mà có thể giúp thực hiện điều này chức năng của qua 219 00:10:59,900 --> 00:11:05,010 thông tin giữa các file PHP đang tồn tại trên máy chủ web của chúng tôi. 220 00:11:05,010 --> 00:11:07,760 >> Việc đầu tiên của những siêu globals được gọi là $ _GET. 221 00:11:07,760 --> 00:11:10,140 Và nó có thể là đơn giản nhất để hiểu. 222 00:11:10,140 --> 00:11:12,430 Điều gì xảy ra với $ _GET? 223 00:11:12,430 --> 00:11:16,240 Vâng, về cơ bản, người dùng sẽ gõ thêm thông tin 224 00:11:16,240 --> 00:11:18,390 vào cuối URL của chúng ta. 225 00:11:18,390 --> 00:11:21,460 Và bất cứ điều gì họ gõ, giả sử nó được định dạng trong một cách đặc biệt 226 00:11:21,460 --> 00:11:25,830 được gọi là một chuỗi truy vấn, mà chỉ là một tập hợp các cặp giá trị tách 227 00:11:25,830 --> 00:11:27,810 bằng ký hiệu. 228 00:11:27,810 --> 00:11:32,362 Những cặp giá trị sẽ được được lưu trữ trong một mảng kết hợp $ _GET. 229 00:11:32,362 --> 00:11:34,070 Và từ video của chúng tôi trên PHP cú pháp, chúng ta biết 230 00:11:34,070 --> 00:11:40,080 làm thế nào để làm việc với mảng kết đã. 231 00:11:40,080 --> 00:11:44,090 Vì vậy, đây là một ví dụ về một số PHP, nơi mà có lẽ tôi là 232 00:11:44,090 --> 00:11:50,180 nén tất cả các cặp giá trị mà người sử dụng được cung cấp trong các URL. 233 00:11:50,180 --> 00:11:51,970 Vì vậy, tôi có mở PHP delimiter của tôi. 234 00:11:51,970 --> 00:11:53,410 Tôi có một vòng lặp foreach. 235 00:11:53,410 --> 00:11:57,410 Tôi lặp qua Super Mảng toàn cầu được gọi là $ _GET. 236 00:11:57,410 --> 00:12:00,160 >> Và tôi muốn để có thể tham khảo để cả chìa khóa và giá trị. 237 00:12:00,160 --> 00:12:02,410 Và tôi chỉ in chúng ra, mỗi cái trên dường 238 00:12:02,410 --> 00:12:03,780 tag đoạn riêng của mình ở đây. 239 00:12:03,780 --> 00:12:07,620 Tôi in ra một số HTML và nội suy các giá trị 240 00:12:07,620 --> 00:12:12,900 các khóa và giá trị vào câu nói đó. 241 00:12:12,900 --> 00:12:16,980 >> Vì vậy, chúng ta hãy xem làm thế nào đây thực sự sẽ làm việc trên IDE của chúng tôi. 242 00:12:16,980 --> 00:12:18,980 Và có lẽ điều này sẽ giúp minh họa một chút 243 00:12:18,980 --> 00:12:21,880 về những gì đang thực sự làm GET. 244 00:12:21,880 --> 00:12:23,610 Vì vậy, tôi trở lại đây trong thư mục gốc web của tôi. 245 00:12:23,610 --> 00:12:25,318 Và tôi sẽ phóng to một chút ít để cho thấy bạn 246 00:12:25,318 --> 00:12:28,620 rằng tôi có một tập tin tên, get1.php. 247 00:12:28,620 --> 00:12:31,830 >> Vì vậy, hãy click vào get1.php. 248 00:12:31,830 --> 00:12:36,600 Và tôi không thấy bất kỳ nội dung. 249 00:12:36,600 --> 00:12:38,390 Đó là lạ, phải không? 250 00:12:38,390 --> 00:12:39,740 Vâng, không thực sự thực sự. 251 00:12:39,740 --> 00:12:42,030 Bởi vì tôi đã không cung cấp bất cứ điều gì trong URL. 252 00:12:42,030 --> 00:12:46,270 Tôi sẽ get1.php, nhưng tôi không cung cấp bất kỳ cặp giá trị 253 00:12:46,270 --> 00:12:47,450 như là một phần của chuỗi truy vấn của tôi. 254 00:12:47,450 --> 00:12:50,510 Vì vậy, hãy thêm một chuỗi truy vấn và xem những tập tin này có thể làm. 255 00:12:50,510 --> 00:12:53,040 >> Để bắt đầu một chuỗi truy vấn bạn chỉ cần gõ dấu hỏi. 256 00:12:53,040 --> 00:13:00,820 Sau đó, có lẽ tôi sẽ nói tên = Doug & năm = 2015. 257 00:13:00,820 --> 00:13:02,914 Và sau đó tôi sẽ nhấn Enter. 258 00:13:02,914 --> 00:13:04,080 Bây giờ thông báo những gì đang xảy ra. 259 00:13:04,080 --> 00:13:05,480 Tôi vẫn đang trong get1.php. 260 00:13:05,480 --> 00:13:08,445 Nhưng bây giờ tôi đã cung cấp cặp giá trị quan trọng, và tôi 261 00:13:08,445 --> 00:13:14,940 in chúng ra trên riêng của họ Tên paragraph--, năm Doug--, 2015. 262 00:13:14,940 --> 00:13:17,970 Đó chính là đoạn mã chúng ta chỉ thấy trên slide một chút thời gian trước đây. 263 00:13:17,970 --> 00:13:22,290 >> Và nếu tôi muốn có thêm một cặp giá trị quan trọng, và class = CS50. 264 00:13:22,290 --> 00:13:25,325 265 00:13:25,325 --> 00:13:27,580 Bây giờ tôi có một giá trị quan trọng cặp đó được in ra 266 00:13:27,580 --> 00:13:30,025 khi tôi xem lại các URL một lần nữa. 267 00:13:30,025 --> 00:13:31,900 Bây giờ có lẽ đây không phải là định dạng khủng khiếp tốt. 268 00:13:31,900 --> 00:13:33,660 Vì vậy, tôi có một phiên bản khác của get.php. 269 00:13:33,660 --> 00:13:36,350 Đó là get2.php. 270 00:13:36,350 --> 00:13:39,070 >> Sự khác biệt ở đây một là tôi có tập tin CSS, 271 00:13:39,070 --> 00:13:41,690 và nó định dạng thứ một ít độc đáo hơn cho tôi. 272 00:13:41,690 --> 00:13:43,940 Đó có lẽ không phải là nhất CSS đẹp trên thế giới. 273 00:13:43,940 --> 00:13:45,650 Nhưng nó chỉ là một cách khác để làm việc đó. 274 00:13:45,650 --> 00:13:52,840 Vì vậy, tôi vẫn có thể truy cập cho các biến của tôi bằng cách sử dụng $ _GET. 275 00:13:52,840 --> 00:13:56,610 Và trong trường hợp này, tôi chỉ là loại làm cho CSS một chút ưa thích hơn. 276 00:13:56,610 --> 00:13:58,360 Và nếu chúng ta bật qua IDE của tôi cho một thứ hai, 277 00:13:58,360 --> 00:14:06,870 Tôi sẽ chỉ cho bạn trong web PHP của tôi thư mục ở đây, get2.php. 278 00:14:06,870 --> 00:14:10,010 Chúng tôi sẽ mở nó lên, một số mã HTML ở đây. 279 00:14:10,010 --> 00:14:13,220 Rõ ràng tôi đang liên kết trong đó File CSS Tôi đã nói về. 280 00:14:13,220 --> 00:14:14,570 Tôi mở một thẻ bảng. 281 00:14:14,570 --> 00:14:15,970 Và sau đó ở đây là vòng lặp foreach của tôi. 282 00:14:15,970 --> 00:14:18,450 >> Ở đây là, những gì tôi thấy trên slide trước. 283 00:14:18,450 --> 00:14:21,007 Sự khác biệt duy nhất là tôi có chìa khóa này và giá trị CSS 284 00:14:21,007 --> 00:14:22,340 tạo kiểu tóc mà tôi đang áp dụng với nó. 285 00:14:22,340 --> 00:14:25,622 Nhưng đó là tất cả tôi đang làm, là tôi iterating qua $ _GET để có được tất cả 286 00:14:25,622 --> 00:14:26,580 của các cặp giá trị quan trọng. 287 00:14:26,580 --> 00:14:28,890 >> Và tôi in ra như bảng. 288 00:14:28,890 --> 00:14:33,230 Và, rõ ràng, tôi đang định dạng các phím trong một cách, với