1 00:00:00,000 --> 00:00:04,410 >> [เล่นเพลง] 2 00:00:04,410 --> 00:00:12,250 3 00:00:12,250 --> 00:00:15,770 >> ลำโพง 1: นี่คือ CS50 และ นี้เป็นจุดสิ้นสุดของสัปดาห์ที่เจ็ด 4 00:00:15,770 --> 00:00:20,240 วันนี้อาจจะเป็นที่เรา จริงๆการเรียนการสอนภาษา 5 00:00:20,240 --> 00:00:24,100 เรานำมาใช้ในคู่ที่ผ่านมาของ สัปดาห์ HTML และ CSS ที่ไม่ 6 00:00:24,100 --> 00:00:25,240 มีการเขียนโปรแกรมภาษา 7 00:00:25,240 --> 00:00:28,600 และแน่นอนถึงแม้ว่าเราไม่ได้ ดูเกือบทั้งหมดของแท็ก 8 00:00:28,600 --> 00:00:33,410 ที่มาพร้อมกับ HTML และเกือบทั้งหมด ของคุณสมบัติที่มาพร้อมกับ CSS, 9 00:00:33,410 --> 00:00:35,007 ที่ชนิดของมันสำหรับ HTML และ CSS 10 00:00:35,007 --> 00:00:36,840 เราจะเพียงทั่วไป เริ่มต้นสมมติว่าคุณ 11 00:00:36,840 --> 00:00:39,545 เข้าใจความคิดทั่วไป แท็กและคุณลักษณะ 12 00:00:39,545 --> 00:00:41,850 และหน้าถูกส่ง จากลูกค้าไปยังเซิร์ฟเวอร์ 13 00:00:41,850 --> 00:00:45,280 >> เพราะวันนี้เราเริ่มที่จะมองไปที่ อีกภาษาโปรแกรม PHP 14 00:00:45,280 --> 00:00:47,110 เรากำลังจะทำเร็วสุดนี้ 15 00:00:47,110 --> 00:00:50,910 เราไม่ได้จะสอนคุณ PHP ต่อ se เหมือนเราไม่ได้หวังที่จะสอนคุณ 16 00:00:50,910 --> 00:00:52,670 C ต่อ se แต่การเขียนโปรแกรม 17 00:00:52,670 --> 00:00:55,088 และแน่นอนหนึ่งใน เป้าหมายสำหรับหลักสูตรนี้ 18 00:00:55,088 --> 00:00:57,820 ไม่ได้ที่จะสอนให้คุณซี หรือ HTML หรือ CSS หรือ PHP, 19 00:00:57,820 --> 00:01:00,370 หรือจำนวนอื่น ๆ ฉวัดเฉวียนคำหรือคำย่อ 20 00:01:00,370 --> 00:01:03,097 แต่วิทยาศาสตร์คอมพิวเตอร์ และวิธีการในการเขียนโปรแกรมพื้นฐาน 21 00:01:03,097 --> 00:01:05,930 และแน่นอนในวันนี้เราจะเริ่มต้นที่จะใช้ ผู้ที่ล้อการฝึกอบรมออกทั้งหมด 22 00:01:05,930 --> 00:01:10,600 ต่อไปโดยบินผ่าน ที่เรียกว่าภาษา PHP, ดังต่อไปนี้ 23 00:01:10,600 --> 00:01:13,640 >> นี่คือสิ่งที่ภาษานี้ดูเหมือนว่า 24 00:01:13,640 --> 00:01:17,790 ปรากฎว่ามีความจำเป็นในการ ฟังก์ชั่นหลักในการเขียนโปรแกรม 25 00:01:17,790 --> 00:01:19,470 ในภาษาที่เรียกว่าของ PHP 26 00:01:19,470 --> 00:01:22,585 ดังนั้นที่มีอยู่แล้วเสียงเล็ก ๆ น้อย ๆ ที่เรียบง่าย กว่า C กับที่เราคุ้นเคย 27 00:01:22,585 --> 00:01:25,370 แต่กลับกลายเป็นว่าถ้าคุณ ต้องการที่จะประกาศตัวแปร 28 00:01:25,370 --> 00:01:29,470 ที่คุณทำมันเกือบจะเหมือนกัน แต่ซี มีความแตกต่างอย่างหนึ่งที่นี่ 29 00:01:29,470 --> 00:01:31,850 เมื่อผมประกาศสตริง หรืออาจจะสองความแตกต่าง 30 00:01:31,850 --> 00:01:32,725 มีลักษณะแตกต่างอะไร 31 00:01:32,725 --> 00:01:35,810 32 00:01:35,810 --> 00:01:37,160 >> ผู้ชม: เครื่องหมายดอลลาร์ 33 00:01:37,160 --> 00:01:39,951 >> ลำโพง 1: ใช่มีดอลล่า เข้าสู่ระบบที่เราไม่เคยเห็นมาก่อน 34 00:01:39,951 --> 00:01:41,451 และสิ่งที่ขาดหายไป? 35 00:01:41,451 --> 00:01:41,950 ใช่? 36 00:01:41,950 --> 00:01:42,820 >> ผู้ชม: [ไม่ได้ยิน] 37 00:01:42,820 --> 00:01:44,403 >> ลำโพง 1: ใช่มีชนิดข้อมูลที่ไม่มี 38 00:01:44,403 --> 00:01:48,410 ดังนั้นจึงปรากฎว่า PHP เป็นสิ่งที่เรา เรียกภาษาพิมพ์อย่างอิสระที่ 39 00:01:48,410 --> 00:01:49,959 ซีพิมพ์มั่น 40 00:01:49,959 --> 00:01:52,500 พิมพ์หลวมก็หมายความว่า มีชนิดข้อมูลที่แตกต่างกัน 41 00:01:52,500 --> 00:01:54,470 มีสตริงและ ints และลอย 42 00:01:54,470 --> 00:01:56,330 แต่ตัวเลขคอมพิวเตอร์ที่ออก 43 00:01:56,330 --> 00:01:58,664 คุณโปรแกรมเมอร์ของมนุษย์ ไม่ได้ที่จะคิดออก 44 00:01:58,664 --> 00:02:00,580 ดังนั้นสิ่งที่คุณต้องทำ ที่จะประกาศเป็นตัวแปร 45 00:02:00,580 --> 00:02:03,220 เครื่องหมายดอลลาร์ชื่อของคุณ ตัวแปรแล้วเช่น 46 00:02:03,220 --> 00:02:04,760 อ้างนำมาอ้างสวัสดีโลก 47 00:02:04,760 --> 00:02:07,662 >> อย่างนี้เป็นสิ่งที่ สภาพมีลักษณะเช่นใน PHP 48 00:02:07,662 --> 00:02:08,328 ความแตกต่างใด? 49 00:02:08,328 --> 00:02:10,650 50 00:02:10,650 --> 00:02:11,150 เลขที่ 51 00:02:11,150 --> 00:02:12,540 ดังนั้นมันจะเปิดสอบเหล่านี้เหมือนกัน 52 00:02:12,540 --> 00:02:14,665 และคุณอาจจะมีน้อยลง สาขาหรือสาขามากขึ้น 53 00:02:14,665 --> 00:02:16,557 แต่เปลี่ยนไวยากรณ์ ออกตรงเดียวกัน 54 00:02:16,557 --> 00:02:18,390 สามารถแสดงออกบูลีน สั่งซื้อด้วยกัน 55 00:02:18,390 --> 00:02:20,400 การแสดงออกบูลีน สามารถ ANDed ด้วยกัน 56 00:02:20,400 --> 00:02:21,430 คุณยังมีสวิทช์ 57 00:02:21,430 --> 00:02:23,790 แม้ว่าคุณจะไม่ได้ใช้ เหล่านี้เหล่านี้จะอยู่ใน C 58 00:02:23,790 --> 00:02:26,020 และพวกเขากำลังทำงาน เทียบเท่าใน PHP 59 00:02:26,020 --> 00:02:28,260 >> และในความเป็นจริงใน PHP พวกเขากำลัง เล็ก ๆ น้อย ๆ มีประสิทธิภาพมากขึ้น 60 00:02:28,260 --> 00:02:32,540 ใน C คุณสามารถเปรียบเทียบการบางอย่าง ชนิดข้อมูลเช่น ints และตัวอักษร, 61 00:02:32,540 --> 00:02:36,320 ในขณะที่ใน PHP คุณจริงสามารถเปรียบเทียบ สตริงขนมาใส่เต็มรูปแบบโดยไม่ต้อง 62 00:02:36,320 --> 00:02:38,460 กังวลเกี่ยวกับตัวชี้และไม่ชอบ 63 00:02:38,460 --> 00:02:39,430 ดังนั้นที่นี่เป็นห่วง 64 00:02:39,430 --> 00:02:41,270 นี่เป็นเพียง pseudocode รหัสถ้าคุณจะ 65 00:02:41,270 --> 00:02:43,400 แต่การก่อสร้างก็เหมือนกับซี 66 00:02:43,400 --> 00:02:47,520 >> และนี่ก็เป็นห่วงในขณะที่ pseudocode therefore-- เหมือนกับซี 67 00:02:47,520 --> 00:02:49,390 ที่นี่ต้องทำในขณะที่เป็น loop-- เหมือนกัน 68 00:02:49,390 --> 00:02:51,390 และเพื่อให้มีชนิดของ รูปแบบนี้โดยที่นี่ 69 00:02:51,390 --> 00:02:54,400 มีประโยคอื่น ๆ ไม่กี่ คุณสมบัติแน่นอนเรากำลังจะไปดู 70 00:02:54,400 --> 00:02:57,340 ในความเป็นจริงที่นี่เป็นคนดี วิธีการใน PHP โดย, 71 00:02:57,340 --> 00:02:59,350 ถ้าคุณต้องการที่จะย้ำ มากกว่าอาร์เรย์และคุณ 72 00:02:59,350 --> 00:03:02,309 ไม่ต้องการที่จะข้ามผ่าน ห่วงจิตใจและประโยคของการมี 73 00:03:02,309 --> 00:03:05,178 int ฉันเท่ากับ 0 ผมน้อย กว่า n ฉันบวก plus-- ที่ 74 00:03:05,178 --> 00:03:07,040 เป็นเพียงจำนวนมากของไวยากรณ์ที่น่ารำคาญ 75 00:03:07,040 --> 00:03:10,654 คุณสามารถพูดได้น้อยมาก คล่องตัวสำหรับตัวเลขแต่ละ 76 00:03:10,654 --> 00:03:13,320 เป็นหมายเลขที่ในกรณีนี้ ตัวเลขเงินดอลลาร์เข้าสู่ระบบฉันสมมติ, 77 00:03:13,320 --> 00:03:15,400 เป็นเหมือนตัวเลขที่เรียกว่าอาร์เรย์ 78 00:03:15,400 --> 00:03:18,810 และจากนั้นฉันสมมติว่าจำนวน เอกพจน์จะเป็นตัวแปร 79 00:03:18,810 --> 00:03:22,940 >> และสิ่งที่ PHP จะทำเพื่อฉันเป็นฉันย้ำ มากกว่าวงนี้คือในแต่ละซ้ำ 80 00:03:22,940 --> 00:03:28,450 มันจะปรับปรุงจำนวนตัวแปร เป็นองค์ประกอบที่ i ในจำนวนพหูพจน์ 81 00:03:28,450 --> 00:03:30,060 ดังนั้นมันก็จัดการทุกที่สำหรับฉัน 82 00:03:30,060 --> 00:03:32,750 ไม่มีวงเล็บไม่มี เครื่องหมายดอลลาร์ไม่มีกึ่งทวิภาค 83 00:03:32,750 --> 00:03:34,117 มันเป็นเพียงเล็ก ๆ น้อย ๆ ที่เรียบง่าย 84 00:03:34,117 --> 00:03:35,950 ดีถ้าคุณต้องการ อาเรย์ก็จะเปิดออกคุณ 85 00:03:35,950 --> 00:03:38,908 สามารถทำสิ่งที่สวยคล้ายกับ ซีไวยากรณ์เป็นเพียงเล็กน้อยที่แตกต่างกัน 86 00:03:38,908 --> 00:03:41,000 แต่ที่นี่เป็นอาร์เรย์ที่เรียกว่า ดอลล่าลงนามตัวเลข 87 00:03:41,000 --> 00:03:44,261 และฉันจะใช้ใน PHP, ตาราง วงเล็บก็จะเปิดออก 88 00:03:44,261 --> 00:03:47,260 และเรากำลังจะไปดูเหล่านี้อีกครั้ง ใน JavaScript-- ยังภาษาอื่น 89 00:03:47,260 --> 00:03:49,968 ฉันเพียงแค่ใช้เครื่องหมายวงเล็บเหลี่ยม จะมีรายการที่คั่นด้วยเครื่องหมายจุลภาค 90 00:03:49,968 --> 00:03:51,530 ของจำนวนเต็มในกรณีนี้ 91 00:03:51,530 --> 00:03:53,010 แต่ที่ทำให้ผมอาร์เรย์ 92 00:03:53,010 --> 00:03:56,270 >> แต่ถึงแม้จะมีประสิทธิภาพมากขึ้นใน PHP เรายังมีสิ่งที่เป็นโดยทั่วไป 93 00:03:56,270 --> 00:03:57,640 เรียกว่าเชื่อมโยงอาร์เรย์ 94 00:03:57,640 --> 00:03:59,540 และจำนวนมากของภาษา มีเหล่านี้เช่นกัน 95 00:03:59,540 --> 00:04:03,810 สิ่งที่เกี่ยวกับอาร์เรย์ C คือการที่ดัชนี 96 00:04:03,810 --> 00:04:06,940 สำหรับอาร์เรย์สิ่งที่คุณ ใช้ในวงเล็บที่ผ่าน 97 00:04:06,940 --> 00:04:08,600 คุณสามารถเข้าถึงองค์ประกอบจะต้องเป็นสิ่งที่? 98 00:04:08,600 --> 00:04:10,620 >> ผู้ชม: [ไม่ได้ยิน] 99 00:04:10,620 --> 00:04:14,220 >> ลำโพง 1: พวกเขาจะต้องมีตัวเลขหรือ จำนวนเต็มโดยเฉพาะจากศูนย์ขึ้น 100 00:04:14,220 --> 00:04:17,140 ดีใน PHP และก็จะเปิด ออกมาในภาษาอื่น ๆ 101 00:04:17,140 --> 00:04:20,820 คุณสามารถเริ่มต้นที่จะมี ดัชนีที่ไม่ได้เป็นตัวเลข 102 00:04:20,820 --> 00:04:23,880 แต่พวกเขากำลังจริงคำหรือ วลีเพื่อให้มากกว่า 103 00:04:23,880 --> 00:04:27,070 พยายามที่จะจำที่บางสิ่งบางอย่าง ถูกหรือเก็บไว้ในที่ที่ฉันตัวแปร 104 00:04:27,070 --> 00:04:31,720 คุณจริงสามารถใช้คำว่าและพูดว่า that-- คุณสามารถพูดเช่นนี้ 105 00:04:31,720 --> 00:04:34,730 >> เงินดอลลาร์ดังนั้นสัญญาณที่อ้างเป็น ชื่อของตัวแปรที่นี่ 106 00:04:34,730 --> 00:04:39,360 นี่คือไวยากรณ์ค่อนข้างขี้ขลาด ที่เชื่อมโยงค่าคีย์สอง 107 00:04:39,360 --> 00:04:41,250 คู่ตัวแปรนี้ 108 00:04:41,250 --> 00:04:45,490 โดยเฉพาะอย่างนี้จะให้ฉัน อาร์เรย์ที่มีความยาว 2 109 00:04:45,490 --> 00:04:47,660 แต่ดัชนีไม่ได้ 0 และ 1 110 00:04:47,660 --> 00:04:51,250 ดัชนีมีคำพูดที่นำมาอ้าง สัญลักษณ์และใบเสนอราคาได้นำมาอ้าง 111 00:04:51,250 --> 00:04:55,990 และค่านิยมของดัชนีเหล่านั้น ตามลำดับคือ FB สำหรับ Facebook 112 00:04:55,990 --> 00:05:00,360 และ $ 79.53 เมื่อฉันมีอายุการใช้งาน ตรวจสอบราคาสำหรับนี้ 113 00:05:00,360 --> 00:05:01,210 >> นั่นหมายความว่าอย่างไร? 114 00:05:01,210 --> 00:05:04,136 ดีก็หมายความว่า แทนการเขียนรหัส 115 00:05:04,136 --> 00:05:09,612 เช่นนี้ที่ผมใช้ในการทำบางสิ่งบางอย่าง เช่น sign-- ดอลลาร์หรือมากกว่าใน C 116 00:05:09,612 --> 00:05:11,070 ฉันจะไม่ได้มีเครื่องหมายดอลลาร์ 117 00:05:11,070 --> 00:05:13,490 ฉันจะทำอะไรบางอย่าง เหมือนคำพูดที่แล้ว 118 00:05:13,490 --> 00:05:18,410 ฉันจะทำวงเล็บผมที่จะได้รับบางส่วน ค่าตัวเลขโดยพลการจัดทำดัชนี 119 00:05:18,410 --> 00:05:21,430 เริ่มต้นวันนี้ใน PHP ถ้าคุณ ต้องการที่จะได้รับค่าบางอย่าง 120 00:05:21,430 --> 00:05:24,742 การเรียงลำดับของเรามีมากขึ้น ความหมายลึกซึ้ง 121 00:05:24,742 --> 00:05:27,450 เพียงวิธีแฟนซีของบอกว่าเราสามารถ เพียงโทรสิ่งที่สิ่งที่พวกเขา 122 00:05:27,450 --> 00:05:29,800 >> และถ้าคุณต้องการที่จะได้รับ สัญลักษณ์ที่บางสิ่งบางอย่าง 123 00:05:29,800 --> 00:05:32,180 ตอนนี้คุณทำอย่างแท้จริง พูดสัญลักษณ์นำมาอ้าง 124 00:05:32,180 --> 00:05:34,910 ในวงเล็บเหลี่ยม แทนที่จะเป็นเพียงตัวเลข 125 00:05:34,910 --> 00:05:36,450 ดังนั้นจึงเป็นความสะดวกที่ดี 126 00:05:36,450 --> 00:05:38,140 และนั่นคือการจัดเรียงของมันตอนนี้ 127 00:05:38,140 --> 00:05:40,240 มีที่อัดแน่นของเป็น คุณสมบัติอื่น ๆ ใน PHP 128 00:05:40,240 --> 00:05:43,180 และแน่นอน, PHP มาพร้อมกับ อ่างล้างจานในครัวที่เลื่องลือ 129 00:05:43,180 --> 00:05:48,640 หลายสิบหลายร้อยฟังก์ชั่นที่มาพร้อมกับ PHP-- อื่น ๆ อีกมากมายกว่าที่มาพร้อมกับซี 130 00:05:48,640 --> 00:05:51,360 >> และที่ไม่ได้ตั้งใจที่จะ ครอบงำ แต่ช่วย 131 00:05:51,360 --> 00:05:53,900 คุณรู้ว่าเราไม่มี จำเป็นต้องเขียนโค้ด 132 00:05:53,900 --> 00:05:55,590 นั่นคือการจัดเรียงของลงที่นี่แนวคิด 133 00:05:55,590 --> 00:05:58,465 ตอนนี้เราก็สามารถเริ่มต้นการใช้ประโยชน์ คุณสมบัติขั้นสูงมากขึ้น 134 00:05:58,465 --> 00:05:59,920 ที่ภาษาเช่น PHP มี 135 00:05:59,920 --> 00:06:02,630 ดังนั้นเราจึงไม่ต้องกังวลเกี่ยวกับ การเคลื่อนย้ายสิ่งต่าง ๆ รอบในหน่วยความจำ 136 00:06:02,630 --> 00:06:05,338 เราไม่ต้องกังวลเกี่ยวกับ malloc และสิ่งเหล่านี้ในระดับที่ต่ำกว่า 137 00:06:05,338 --> 00:06:09,390 รายละเอียดที่มีประสิทธิภาพที่คุณจะต่อสู้ ด้วยหากไม่ได้ต่อสู้กับ pset5, 138 00:06:09,390 --> 00:06:13,380 แต่คุณสามารถเริ่มต้น เร็ว ๆ นี้จะได้รับ 139 00:06:13,380 --> 00:06:17,770 >> ในความเป็นจริงเรามาเขียนสุด โปรแกรมใช้งานง่ายใน PHP ดังต่อไปนี้ 140 00:06:17,770 --> 00:06:21,550 ฉันจะไปหัวเข้า CS50 IDE ที่นี่และสิ่งที่ฉันจะทำอย่างไร 141 00:06:21,550 --> 00:06:29,370 คือการสร้างไฟล์ใหม่ที่มากเพียง เป็นไปได้เรียกว่าสวัสดีจุด PHP 142 00:06:29,370 --> 00:06:31,860 ดังนั้นแทนที่จะจุดคก็ จะได้รับการเรียกว่าจุด PHP 143 00:06:31,860 --> 00:06:34,260 และแล้วในแฟ้มนี้ ผมสามารถเริ่มต้นการพิมพ์ 144 00:06:34,260 --> 00:06:36,960 แต่มันกลับกลายเป็นว่า สิ่งหนึ่งที่ฉันต้องรู้ 145 00:06:36,960 --> 00:06:41,470 คือว่าไฟล์ PHP โดยทั่วไปต้องการ ที่จะเริ่มต้นกับบางไวยากรณ์พิเศษ 146 00:06:41,470 --> 00:06:44,570 ในทำนองเดียวกันกับ HTML แต่อีกครั้ง PHP เป็นภาษาโปรแกรมไม่ 147 00:06:44,570 --> 00:06:45,590 ภาษามาร์กอัป 148 00:06:45,590 --> 00:06:48,700 >> ดังนั้นทุกไฟล์และมันเรียงลำดับ โง่มองของฉันจะยอมรับ 149 00:06:48,700 --> 00:06:50,480 วงเล็บเปิดเครื่องหมายคำถาม, PHP 150 00:06:50,480 --> 00:06:53,060 และนั่นก็เป็นเพียงแค่ ทางภาษาพูดว่า 151 00:06:53,060 --> 00:06:58,400 เดี๋ยวก่อนคอมพิวเตอร์มาที่นี่โค้ดบางส่วน เขียนในภาษาที่เรียกว่าของ PHP 152 00:06:58,400 --> 00:07:01,900 และแล้วที่ส่วนท้ายสุดของไฟล์ของคุณ คุณทำชนิดของการจัดเรียงของตรงข้าม 153 00:07:01,900 --> 00:07:04,860 คุณไม่ได้เขียน PHP อีกครั้งคุณเพียง ทำเครื่องหมายคำถาม, วงเล็บมุม 154 00:07:04,860 --> 00:07:08,500 และแล้วสิ่งที่คุณใส่ใน ของทั้งสองแท็กเพื่อที่จะพูด 155 00:07:08,500 --> 00:07:11,490 จะเป็นหรือควรจะเป็นโค้ด PHP 156 00:07:11,490 --> 00:07:13,180 >> ถ้าอย่างนั้นเราจะทำสิ่งที่ง่ายสุด 157 00:07:13,180 --> 00:07:19,370 ฉันจะไปข้างหน้าและทำพิมพ์ def สวัสดีโลก n เครื่องหมายบันทึก 158 00:07:19,370 --> 00:07:27,310 และตอนนี้ที่พรอมต์ของฉันฉันจะไป ทำให้ hello-- ไม่ฉันจะทำ 159 00:07:27,310 --> 00:07:28,726 จุดเฉือนสวัสดี 160 00:07:28,726 --> 00:07:31,250 ไม่มีเฉือนจุด hm 161 00:07:31,250 --> 00:07:32,990 ดังนั้นสิ่งที่แตกต่างกัน 162 00:07:32,990 --> 00:07:36,920 และแน่นอนนี่คือความแตกต่างที่สำคัญ ระหว่าง PHP และภาษาเช่นซีซี 163 00:07:36,920 --> 00:07:38,730 เป็นภาษาที่รวบรวมสิ่งที่เรียกว่า 164 00:07:38,730 --> 00:07:40,929 สิ่งที่มันไม่ได้หมายความว่าสำหรับ C ที่จะรวบรวม? 165 00:07:40,929 --> 00:07:41,970 อะไรคือความหมาย? 166 00:07:41,970 --> 00:07:42,898 ใช่ 167 00:07:42,898 --> 00:07:45,220 >> ผู้ชม: เขียนลงในรหัสเครื่อง ดังนั้นมันอาจจะดำเนินการโดยคอมพิวเตอร์ 168 00:07:45,220 --> 00:07:46,011 >> ลำโพงที่ 1: ว่า 169 00:07:46,011 --> 00:07:49,075 เราต้องแรกแปลงเป็น ที่เรียกว่ารหัสเครื่องศูนย์และคน, 170 00:07:49,075 --> 00:07:51,950 ก่อนที่มันจะจริงจะปฏิบัติการ และเข้าใจโดยคอมพิวเตอร์ 171 00:07:51,950 --> 00:07:52,840 โดยภายในอินเทล 172 00:07:52,840 --> 00:07:54,530 โดย CPU ภายในของคอมพิวเตอร์ 173 00:07:54,530 --> 00:07:58,170 PHP โดยคมชัดเป็นสิ่งที่เรียกว่า แปลภาษาซึ่ง 174 00:07:58,170 --> 00:08:02,230 หมายความว่าคุณไม่ได้รวบรวมไว้ เข้ามาในศูนย์และคนรหัสเครื่อง 175 00:08:02,230 --> 00:08:04,360 คุณแทนปล่อยให้มันเป็นรหัสที่มา 176 00:08:04,360 --> 00:08:08,130 และคุณแทนผ่านมันเป็นอินพุท ในการเขียนโปรแกรมเป็นล่าม 177 00:08:08,130 --> 00:08:11,960 ว่าคนอื่นเขียน ปีที่ผ่านมาที่เข้าใจมัน 178 00:08:11,960 --> 00:08:14,310 ทีละบรรทัดตัวอักษรสำหรับตัวอักษร 179 00:08:14,310 --> 00:08:16,120 ดังนั้นในคำอื่น ๆ มนุษย์ออกมีเขียน 180 00:08:16,120 --> 00:08:19,670 โปรแกรมที่จะมีลักษณะ ที่เส้นรหัสของคุณโดยสาย 181 00:08:19,670 --> 00:08:21,680 และคิดออกว่า คอมพิวเตอร์ควรจะทำอย่างไร 182 00:08:21,680 --> 00:08:25,960 โดยไม่ต้องแปลง ตรงไปยังศูนย์และคน 183 00:08:25,960 --> 00:08:28,370 >> ดังนั้นถ้ามันเห็นสำหรับห่วง ล่ามนี้ที่เรียกว่า 184 00:08:28,370 --> 00:08:30,630 เป็นไปได้เหมือนสิ่งที่ถูกต้องผมควร ทำอะไรบางอย่างอีกครั้งและอีกครั้งและอีกครั้ง 185 00:08:30,630 --> 00:08:31,150 ฉันควรทำอย่างไร? 186 00:08:31,150 --> 00:08:32,159 ผมขอมองไปที่บรรทัดถัดไป 187 00:08:32,159 --> 00:08:33,367 ผมขอมองไปที่บรรทัดถัดไป 188 00:08:33,367 --> 00:08:35,350 และมันอย่างแท้จริงตีความทีละบรรทัด 189 00:08:35,350 --> 00:08:37,220 ดังนั้นในการดำเนินการเรื่องนี้ผมไม่ได้ใช้ให้ 190 00:08:37,220 --> 00:08:39,409 ฉันไม่ได้ใช้เฉือนจุดในกรณีนี้ 191 00:08:39,409 --> 00:08:43,530 ฉันทำแทน PHP ซึ่งเป็น ชื่อของโปรแกรม a.k.a. 192 00:08:43,530 --> 00:08:46,562 ล่ามว่า ที่ติดตั้งใน CS50 IDE, 193 00:08:46,562 --> 00:08:48,770 และตอนนี้ฉันต้องผ่าน อาร์กิวเมนต์บรรทัดคำสั่งที่ 194 00:08:48,770 --> 00:08:52,290 ค่อนข้างเป็นเพียงชื่อของ ไฟล์ที่ฉันต้องการที่จะตีความ 195 00:08:52,290 --> 00:08:54,740 หรือมากกว่าตั้งใจว่าผมต้องการที่จะทำงาน 196 00:08:54,740 --> 00:08:57,000 และถ้าผมตีใส่มีเรามีมัน 197 00:08:57,000 --> 00:08:57,825 สวัสดีชาวโลก. 198 00:08:57,825 --> 00:08:59,950 ตอนนี้มันกลับกลายเป็นว่าผม def พิมพ์ที่ใช้จงใจ 199 00:08:59,950 --> 00:09:01,600 เราจะสร้างสะพานเชื่อมจาก C ไป PHP 200 00:09:01,600 --> 00:09:05,150 ส่วนใหญ่การเขียนโปรแกรม PHP ในขณะที่คุณจะเห็น ไม่ได้รำคาญใช้ความละเอียดในการพิมพ์ 201 00:09:05,150 --> 00:09:08,290 พวกเขาเพียงแค่ใช้ฟังก์ชั่นที่เรียกว่า พิมพ์ C ซึ่งไม่ได้มี 202 00:09:08,290 --> 00:09:11,390 ดังนั้นถ้าผมเรียกมันตอนนี้ก็จริง ทำงานตามหน้าที่เดียวกัน 203 00:09:11,390 --> 00:09:13,730 ฉันไม่สามารถใช้ s เปอร์เซ็นต์ และร้อยละฉันและอื่น ๆ 204 00:09:13,730 --> 00:09:16,250 แต่มีวิธีการอื่น ๆ ใน PHP การดำเนินการที่ 205 00:09:16,250 --> 00:09:18,100 แต่นี้เป็นเพียงการ บอกว่า syntactically, 206 00:09:18,100 --> 00:09:21,850 อื่น ๆ นอกเหนือจากบางสิ่งบางอย่างที่แปลกขึ้น ด้านบนและบางตัวอักษรแปลกลง 207 00:09:21,850 --> 00:09:25,960 ที่ด้านล่างแนวความคิดในขณะนี้ การเขียนโปรแกรมในภาษาอื่น ๆ 208 00:09:25,960 --> 00:09:27,860 เป็นไปได้เหมือนกัน 209 00:09:27,860 --> 00:09:30,120 >> ในความเป็นจริงให้ทำตัวอย่างอีกคนหนึ่ง 210 00:09:30,120 --> 00:09:32,520 ดังนั้นฉันจะไปข้างหน้า และปิดไฟล์นี้ 211 00:09:32,520 --> 00:09:37,740 ผมขอสร้างอีกคนหนึ่งว่า ฉันจะเรียกสภาพ 1 จุด PHP 212 00:09:37,740 --> 00:09:40,770 ดังนั้นไม่เป็นศูนย์เพราะสิ่งที่ผมทำ คือผมมองย้อนกลับไปไม่กี่สัปดาห์ที่ผ่านมา 213 00:09:40,770 --> 00:09:43,490 เรามีไฟล์ที่เรียกว่า เงื่อนไข 1 จุดซีและสิ่งที่ 214 00:09:43,490 --> 00:09:47,590 ฉันไม่ถูกดัดแปลงในของฉัน หัวและในที่นี่บนกระดาษ 215 00:09:47,590 --> 00:09:51,290 และเร็ว ๆ นี้ในหลักสูตรของ เว็บไซต์ทีละบรรทัดลงใน PHP 216 00:09:51,290 --> 00:09:55,520 >> ดังนั้นในรุ่น C ที่เราทำอะไรบางอย่าง เช่นสตริง s ได้รับได้รับสตริง 217 00:09:55,520 --> 00:09:58,200 ดังนั้นจึงเป็นที่แตกต่างกันเล็ก ๆ น้อย ๆ ที่จะทำใน PHP 218 00:09:58,200 --> 00:10:01,390 แต่ฉันแค่ไป ที่จะทำหรือมากกว่าผม 219 00:10:01,390 --> 00:10:05,870 อาจจะทำ int n ได้รับ int ในตัวอย่างก่อนหน้านี้ 220 00:10:05,870 --> 00:10:12,600 ดังนั้นแทนที่จะว่าฉันจะทำ n ได้รับการอ่านบรรทัดฉันต้องการจำนวนเต็ม 221 00:10:12,600 --> 00:10:13,670 โปรด 222 00:10:13,670 --> 00:10:15,110 ดังนั้นนี้เป็นเพียงพรอมต์ของฉัน 223 00:10:15,110 --> 00:10:17,260 และดังนั้นจึงจะเปิดออกและ ฉันเท่านั้นที่จะรู้ว่านี้ 224 00:10:17,260 --> 00:10:20,480 จากการอ่านหรือเห็นการทำงาน ก่อนที่จะอ่านบรรทัดของการทำงานใน PHP 225 00:10:20,480 --> 00:10:23,810 ใช้อาร์กิวเมนต์ที่พรอมต์คำหนึ่ง สำหรับมนุษย์และวัตถุประสงค์ในชีวิต 226 00:10:23,810 --> 00:10:26,220 คือการอ่านบรรทัดของข้อความ ที่เขาหรือเธอในประเภท 227 00:10:26,220 --> 00:10:29,160 และจากนั้นก็เก็บที่ ข้อความลงในตัวแปร n 228 00:10:29,160 --> 00:10:32,200 >> และตอนนี้ฉันอาจต้องการที่จะทำอะไรบางอย่าง เหมือนผมสัปดาห์ที่ผ่านมาในสัปดาห์เช่น 229 00:10:32,200 --> 00:10:33,290 หนึ่งในชั้นเรียน 230 00:10:33,290 --> 00:10:36,600 ถ้า n มากกว่า ศูนย์แล้วฉันจะ 231 00:10:36,600 --> 00:10:42,930 เพื่อขอยืมไวยากรณ์เราก็เห็นว่า def พิมพ์ที่คุณเลือกเป็นจำนวนบวก 232 00:10:42,930 --> 00:10:44,360 n ทับขวา 233 00:10:44,360 --> 00:10:49,990 อื่นถ้า n เท่ากับเท่ากับศูนย์ฉัน จะไปข้างหน้าและพูดว่า def พิมพ์ 234 00:10:49,990 --> 00:10:54,090 คุณเลือกศูนย์เครื่องหมาย n 235 00:10:54,090 --> 00:10:56,830 อื่นกรณีที่นี่ควร แน่นอนเป็นความละเอียดการพิมพ์ 236 00:10:56,830 --> 00:10:58,620 คุณเลือกจำนวนลบ 237 00:10:58,620 --> 00:11:00,970 >> และแน่นอนเราสามารถใช้ ตรรกะของสิ่งนี้ 238 00:11:00,970 --> 00:11:03,390 ในเครือที่แตกต่างกัน วิธี แต่จุดที่นี่ 239 00:11:03,390 --> 00:11:07,210 คือว่า syntactically, สิ่งที่แทบจะเป็นของใหม่ 240 00:11:07,210 --> 00:11:09,830 มันเป็นเพียงเครื่องหมายดอลลาร์และ ฟังก์ชันใหม่และสายการอ่าน 241 00:11:09,830 --> 00:11:12,090 แต่โดยพื้นฐานว่ามีอะไรใหม่ คือตอนนี้ผมตีความนี้ 242 00:11:12,090 --> 00:11:13,910 ฉันผ่านมันเป็นอินพุท ไปยังโปรแกรมอื่น 243 00:11:13,910 --> 00:11:16,620 ดังนั้นถ้าผมต้องการที่จะทำงานนี้ถ้า ผมไม่ได้ทำผิดพลาดใด ๆ 244 00:11:16,620 --> 00:11:20,140 ฉันจะใช้ PHP ของ เงื่อนไข 1 จุด PHP, Enter, 245 00:11:20,140 --> 00:11:23,440 ฉันจะพิมพ์ในจำนวน 50, และสมมติว่าตอนนี้การทำงาน 246 00:11:23,440 --> 00:11:25,940 เพราะตรรกะเป็น สิ่งเดียวกับหนึ่งสัปดาห์ 247 00:11:25,940 --> 00:11:28,020 >> สิทธิทั้งหมดเพื่อให้สวย underwhelming ใช่มั้ย? 248 00:11:28,020 --> 00:11:30,240 เราสามารถทำเช่นนี้ในที่ใด ๆ จำนวนของภาษา 249 00:11:30,240 --> 00:11:33,200 ขอทำบางสิ่งบางอย่างวิธีที่มีประสิทธิภาพมากขึ้น 250 00:11:33,200 --> 00:11:35,610 ปัญหาที่เกิดขึ้นให้เสร็จสิ้นการตั้งห้า 251 00:11:35,610 --> 00:11:37,370 ดังนั้นฉันจะไปข้างหน้าและทำเช่นนี้ 252 00:11:37,370 --> 00:11:42,920 ฉันจะสร้างไฟล์ เรียกว่าพจนานุกรมจุด PHP, 253 00:11:42,920 --> 00:11:45,424 และมีแนวโน้มที่คุณอาจจะ เพื่อช่วงชิงลงจำนวนมากบันทึก 254 00:11:45,424 --> 00:11:47,340 บันทึกจะช่วยให้ คุณถ้าคุณได้รับอนุญาต 255 00:11:47,340 --> 00:11:48,923 ปัญหาในการดำเนินการตั้งห้าใน PHP 256 00:11:48,923 --> 00:11:52,706 แต่เราจะเห็นว่าตอนนี้เราได้อย่างรวดเร็ว สามารถใช้ชุดเดียวกับที่มีปัญหา 257 00:11:52,706 --> 00:11:56,830 >> ดังนั้นในพจนานุกรมจุด PHP, ฉันจะ ที่จะคิดว่ามีอยู่แล้ว 258 00:11:56,830 --> 00:11:58,514 ไฟล์ในโลกที่เรียกว่าสะกด 259 00:11:58,514 --> 00:12:01,430 และแน่นอนฉันนี้ล่วงหน้า และเราจะไม่เดินผ่านสายนี้ 260 00:12:01,430 --> 00:12:03,596 โดยสาย แต่ถ้าคุณ อยากรู้อยากเห็นในภายหลังและต้องการจริงๆ 261 00:12:03,596 --> 00:12:06,250 มัดใจรอบ ความแตกต่างระหว่างคและ PHP, 262 00:12:06,250 --> 00:12:09,030 แท้จริงเปรียบเทียบแฟ้มนี้ สะกดจากรหัสแหล่งที่มาของวันนี้ 263 00:12:09,030 --> 00:12:11,190 ที่เราจะโพสต์ในภายหลัง วันนี้กับชุดพี 264 00:12:11,190 --> 00:12:15,309 ห้าสะกดจุดคที่เราให้คุณ และก็เกือบจะสายเดียวกันโดยสาย 265 00:12:15,309 --> 00:12:16,600 มีบางอย่างที่มากขึ้นเป็นสัญญาณดอลลาร์ 266 00:12:16,600 --> 00:12:18,330 ฟังก์ชั่นที่มีคู่ เล็ก ๆ น้อย ๆ ที่แตกต่างกัน 267 00:12:18,330 --> 00:12:20,038 แต่มันก็เป็นวิธีที่ดี การเรียงลำดับของการเห็นว่า 268 00:12:20,038 --> 00:12:22,740 คุณแปลภาษาหนึ่งไปยังอีก 269 00:12:22,740 --> 00:12:24,812 และมันก็เป็นเหมือนกันเกือบสายสำหรับสาย 270 00:12:24,812 --> 00:12:27,770 แต่ฉันจะคิดว่าที่ ที่มีอยู่และสิ่งที่ฉันจะทำที่นี่ 271 00:12:27,770 --> 00:12:31,310 คือพยายามที่จะระเบิดของคุณ ทราบโดย reimplementing 272 00:12:31,310 --> 00:12:36,210 ความสมบูรณ์ของปัญหาที่กำหนดห้าวิธี เร็วกว่าที่คุณได้รับการทำป่านนี้ 273 00:12:36,210 --> 00:12:39,330 ดังนั้นสำหรับตัวอย่างเช่นฉันจะเป็นครั้งแรก ประกาศตัวแปรระดับโลกที่เรียกว่าขนาด 274 00:12:39,330 --> 00:12:40,444 และตั้งค่าเท่ากับศูนย์ 275 00:12:40,444 --> 00:12:41,610 ตอนนี้ที่ไม่ได้เงินออมมาก 276 00:12:41,610 --> 00:12:44,170 ราคาต่อรองที่คุณดำเนินการ สวยมากขนาดเดียวกัน 277 00:12:44,170 --> 00:12:48,440 หรือคำใบ้คำใบ้จะคืนนี้หรือวันพรุ่งนี้ เพียงแค่ใช้ตัวแปรทั่วโลกที่เรียกว่า 278 00:12:48,440 --> 00:12:49,900 ขนาดและการตั้งค่าเท่ากับศูนย์ 279 00:12:49,900 --> 00:12:52,660 ที่ไม่ได้โดยเฉพาะอย่างยิ่ง สปอยเลอร์ที่น่าตื่นตาตื่นใจ 280 00:12:52,660 --> 00:12:57,180 >> ดังนั้นสิ่งที่เป็นโครงสร้างข้อมูลของคุณ เลือกบรรดาผู้ที่ได้ดำดิ่งใน 281 00:12:57,180 --> 00:13:02,170 และอ่านข้อมูลจำเพาะสิ่งที่โครงสร้างข้อมูล ได้มากที่สุดของคุณได้รับการใช้? 282 00:13:02,170 --> 00:13:06,840 ตารางแฮชหรือพยายามที่อาจจะ บางสายพันธุ์ดังกล่าว 283 00:13:06,840 --> 00:13:10,490 ดังนั้นการดำเนินการตารางแฮชอย่างน้อย เป็นชนิดของจำนวนมากของสายของรหัส 284 00:13:10,490 --> 00:13:10,990 ใช่มั้ย? 285 00:13:10,990 --> 00:13:13,700 และไม่ทั้งหมดของพวกเขาอาจจะ การทำงานที่จุดในสัปดาห์นี้ 286 00:13:13,700 --> 00:13:14,366 แต่ที่ดี 287 00:13:14,366 --> 00:13:19,300 เพราะใน PHP ถ้าฉัน ต้องการตารางแฮชทำ 288 00:13:19,300 --> 00:13:20,260 ใช่มั้ย? 289 00:13:20,260 --> 00:13:22,610 ดังนั้นตัวแปรที่ที่ฉันได้ ประกาศเพียงอย่างเห็นได้ชัด 290 00:13:22,610 --> 00:13:26,180 ที่เรียกว่าดอลล่าตารางเข้าสู่ระบบ ต่อก่อนที่จะมีการเปิดตัว 291 00:13:26,180 --> 00:13:28,902 >> แต่ผมเพียงต้องการที่ ในตอนท้ายของวันที่อาร์เรย์ 292 00:13:28,902 --> 00:13:31,610 แต่ไม่ได้เป็นตัวเลขการจัดทำดัชนี อาร์เรย์เนื่องจากว่าเป็นเหมือนสองสัปดาห์ 293 00:13:31,610 --> 00:13:33,440 สิ่งที่เมื่อเราพูดคุยเกี่ยวกับอาร์เรย์ 294 00:13:33,440 --> 00:13:34,850 ฉันต้องการตารางแฮช 295 00:13:34,850 --> 00:13:38,070 แต่ตารางแฮชเป็นจริง เพียงวิธีที่เป็นรูปธรรมของการพูด 296 00:13:38,070 --> 00:13:40,190 คุณต้องการอาเรย์ 297 00:13:40,190 --> 00:13:43,270 คุณต้องการที่จะสามารถที่จะ ปุ่มเชื่อมโยงที่มีค่า 298 00:13:43,270 --> 00:13:44,200 คีย์ที่มีค่า 299 00:13:44,200 --> 00:13:45,640 อะไรคือสิ่งที่พจนานุกรมจริงๆ? 300 00:13:45,640 --> 00:13:47,080 ดีมันทั้งกลุ่มของปุ่ม 301 00:13:47,080 --> 00:13:50,320 คำเช่นแอปเปิ้ลลูกแพร์และกล้วย และทั้งหมดของคำภาษาอังกฤษเหล่านี้ 302 00:13:50,320 --> 00:13:51,490 ว่าเรามือคุณ 303 00:13:51,490 --> 00:13:54,820 >> และค่านิยมที่คุณได้อย่างมีประสิทธิภาพ ใส่ลงในพจนานุกรมของคุณ 304 00:13:54,820 --> 00:13:57,790 มีทั้งจริงหรือไม่มีการเท็จ 305 00:13:57,790 --> 00:14:00,540 ในคำอื่น ๆ ที่คุณจะใส่ ทั้งกลุ่มของคู่ค่าที่สำคัญ 306 00:14:00,540 --> 00:14:03,720 แอปเปิ้ลจริงลูกแพร์จริงกล้วยจริง 307 00:14:03,720 --> 00:14:07,446 เพื่อที่ว่าเมื่อคุณดึงหรือมอง ข้อมูลในตารางแฮชคุณที่ 308 00:14:07,446 --> 00:14:10,070 ด้วยฟังก์ชั่ตรวจสอบของคุณคุณ ทั้งการกลับคำตอบ 309 00:14:10,070 --> 00:14:13,260 ใช่ฉันพบว่ามันซับซ้อนของฉัน สับตารางหรือไม่ก็ไม่ได้มี 310 00:14:13,260 --> 00:14:14,540 เพื่อให้คุณกลับเท็จ 311 00:14:14,540 --> 00:14:19,440 >> ดังนั้นจะทำอย่างไรที่ทั้งหมดที่ฉันต้องการคือข้อมูล โครงสร้างเหมือนฉันก่อนที่จะนำเสนอ 312 00:14:19,440 --> 00:14:22,050 ฉันเพียงต้องการที่จะสามารถ ที่จะเชื่อมโยงคำ 313 00:14:22,050 --> 00:14:25,570 เหมือนคำพูดที่นำมาอ้างสัญลักษณ์ ที่มีค่าเหมือนจริง 314 00:14:25,570 --> 00:14:27,090 เพื่อให้มีตารางแฮชของฉัน 315 00:14:27,090 --> 00:14:28,180 ลองใช้งานจริง 316 00:14:28,180 --> 00:14:30,310 เพื่อให้มีฟังก์ชั่นไม่กี่ ฉันต้องใช้ 317 00:14:30,310 --> 00:14:33,300 ฉันจะไปข้างหน้าและกัด ปิดฟังก์ชั่นที่เรียกว่าขนาด 318 00:14:33,300 --> 00:14:34,390 มันต้องใช้เวลาไม่มีข้อโต้แย้ง 319 00:14:34,390 --> 00:14:36,660 ฉันจะได้ไม่ต้องกังวลกับ คำ, โมฆะใน PHP 320 00:14:36,660 --> 00:14:38,770 ผมก็จะกลับไปขนาด 321 00:14:38,770 --> 00:14:41,287 >> และเป็นกัน PHP มี รายละเอียดที่น่ารำคาญนี้ minorly, 322 00:14:41,287 --> 00:14:44,620 ซึ่งถ้าเป็นสิ่งที่ทั่วโลกคุณจะต้อง บอกฟังก์ชั่นที่คุณกำลังใช้ 323 00:14:44,620 --> 00:14:46,220 มันเดี๋ยวก่อนนี้เป็นตัวแปรทั่วโลก 324 00:14:46,220 --> 00:14:49,330 ดังนั้นความโง่เขลาของเล็ก ๆ น้อย ๆ แต่คุณ ต้องทำมันกระนั้น 325 00:14:49,330 --> 00:14:50,920 >> ดังนั้นสิ่งที่เกี่ยวกับการโหลด? 326 00:14:50,920 --> 00:14:52,990 ฉันจะใช้ ฟังก์ชั่นที่เรียกว่าการโหลด 327 00:14:52,990 --> 00:14:56,790 ที่ใช้เวลาในชื่อของพจนานุกรมที่ เช่นเดียวกับในปัญหาตั้งห้า 328 00:14:56,790 --> 00:14:59,554 และก่อนที่จะดำเนินการต่อไป สังเกตเห็นว่าฉันไม่ได้ 329 00:14:59,554 --> 00:15:00,970 รับพิมพ์ค่อนข้างสิ่งเดียวกัน 330 00:15:00,970 --> 00:15:06,060 สิ่งที่แตกต่างกันอย่างเห็นได้ชัดใน PHP เกี่ยวกับ วิธีการที่คุณประกาศเมื่อเทียบกับฟังก์ชั่น C หรือไม่? 331 00:15:06,060 --> 00:15:06,616 ใช่ 332 00:15:06,616 --> 00:15:07,490 ผู้ชม: [ไม่ได้ยิน] 333 00:15:07,490 --> 00:15:08,573 ลำโพงที่ 1: การกลับมาไม่มีประเภท 334 00:15:08,573 --> 00:15:12,350 และแน่นอนว่าเป็นกรณีที่ PHP ตราบเท่าที่มันพิมพ์อย่างอิสระ 335 00:15:12,350 --> 00:15:14,190 นอกจากนี้ยังมีเล็ก ๆ น้อย ๆ เลอะเทอะในแง่ที่ว่า 336 00:15:14,190 --> 00:15:17,680 คุณไม่ได้ระบุเป็นโปรแกรมเมอร์ สิ่งนี้กลับมาทำงาน 337 00:15:17,680 --> 00:15:20,490 คุณจะต้องมองจริง รหัสที่จะคิดออกว่า 338 00:15:20,490 --> 00:15:22,670 หรืออ่านความคิดเห็น หรือเอกสาร 339 00:15:22,670 --> 00:15:24,870 ดังนั้น pluses และ minuses ของ เหล่านี้ชนิดของการตัดสินใจ 340 00:15:24,870 --> 00:15:26,750 แต่ผมต้องบอกว่า คำสำคัญฟังก์ชั่น 341 00:15:26,750 --> 00:15:28,360 และเมื่อเราได้เรียนรู้ JavaScript ในสัปดาห์ที่สอง 342 00:15:28,360 --> 00:15:31,026 เรากำลังจะไปดูในสิ่งเดียวกัน อีกครั้ง แต่มันเป็นความคิดเดียวกัน 343 00:15:31,026 --> 00:15:34,220 ชื่อของฟังก์ชั่นการโต้แย้ง หรือข้อโต้แย้งหรือขาดมันและตอนนี้ 344 00:15:34,220 --> 00:15:35,630 นี่คือการดำเนินการ 345 00:15:35,630 --> 00:15:38,860 >> ดังนั้นฉันจะตัดมุมบางเพียง จะเป็นอย่างมากเพื่อรอสักครู่ 346 00:15:38,860 --> 00:15:40,485 แต่ฉันจะไปข้างหน้าและพูดแบบนี้ 347 00:15:40,485 --> 00:15:44,890 นี่คือวิธีการที่ฉันสามารถโหลด ไฟล์ลงในอาร์เรย์ 348 00:15:44,890 --> 00:15:47,580 มีฟังก์ชั่นใน PHP ที่เรียกว่าไฟล์ 349 00:15:47,580 --> 00:15:49,300 คุณมอบให้ชื่อของไฟล์ 350 00:15:49,300 --> 00:15:53,950 มันมือคุณกลับอาร์เรย์ภายใน ซึ่งเป็นสายจากไฟล์ทุก 351 00:15:53,950 --> 00:15:56,480 จากศูนย์หนึ่งขึ้น ถึง n ลบ 1 เส้น 352 00:15:56,480 --> 00:15:57,210 ที่มันใช่มั้ย? 353 00:15:57,210 --> 00:15:57,990 ไม่มีฉอ่านเป็น 354 00:15:57,990 --> 00:15:58,826 ไม่มีฉ s ได้รับเป็น 355 00:15:58,826 --> 00:15:59,700 มีร้อยละของไม่ได้ 356 00:15:59,700 --> 00:16:00,420 มีอาการปวดหัวไม่ได้ 357 00:16:00,420 --> 00:16:01,220 มี feof ไม่ 358 00:16:01,220 --> 00:16:03,950 ทั้งหมดของสิ่งที่ที่ คุณได้รับการต่อสู้บางที 359 00:16:03,950 --> 00:16:06,550 กับพีตั้งสี่ห้าออกไป 360 00:16:06,550 --> 00:16:09,450 >> ดังนั้นฉันเพียงแค่อ่านบรรทัดเหล่านั้นลง แฟ้มและแล้วคุณรู้อะไรไหม 361 00:16:09,450 --> 00:16:15,510 ถ้าผมอยากจะย้ำกว่าคำพูดเหล่านั้น ที่ฉันสามารถทำได้สำหรับสายแต่ละเส้น 362 00:16:15,510 --> 00:16:19,992 โปรดจำไว้ว่านี้เป็นชนิดของฉลาด วิธีการ iterating มากกว่าอาร์เรย์ดัชนี 363 00:16:19,992 --> 00:16:25,090 โดยดัชนีและโทรซ้ำกัน บรรทัดปัจจุบันดอลลาร์สายสัญญาณ 364 00:16:25,090 --> 00:16:31,560 และที่นี่ฉันจะไปและ บอกว่าโต๊​​ะตัวยึดสายที่ได้รับจริง 365 00:16:31,560 --> 00:16:35,880 >> ในคำอื่น ๆ นี้เป็นวิธีที่ผม ใส่ลงในตารางแฮชของฉันใน PHP 366 00:16:35,880 --> 00:16:38,740 ผมบอกว่าเงินดอลลาร์เข้าสู่ระบบตารางซึ่ง เป็นอาเรย์ของฉันที่เป็น 367 00:16:38,740 --> 00:16:40,690 ว่างต่อบรรทัดของรหัสขึ้นดังกล่าวข้างต้น 368 00:16:40,690 --> 00:16:42,790 จากนั้นผมก็ดัชนีลงไป ไม่ได้ใช้ตัวเลข 369 00:16:42,790 --> 00:16:45,300 แต่แท้จริงโดยใช้ คำหลักที่ฉันดูแลเกี่ยวกับ 370 00:16:45,300 --> 00:16:47,730 อาจจะเป็นแอปเปิ้ลลูกแพร์หรือ หรือกล้วยหรืออะไรก็ตาม 371 00:16:47,730 --> 00:16:51,645 แต่ฉันเฉพาะการจัดทำดัชนี เป็นมันชอบผมนำเสนอก่อนหน้านี้ 372 00:16:51,645 --> 00:16:53,770 ฉันใช้ชื่อของฉัน อาเรย์และแล้วฉัน 373 00:16:53,770 --> 00:16:56,450 ใช้คำพูดที่นำมาอ้างใน วงเล็บกับสตริง 374 00:16:56,450 --> 00:16:58,490 แทนที่จะเป็นจำนวนจริง 375 00:16:58,490 --> 00:17:00,250 >> และเพื่อที่มัน 376 00:17:00,250 --> 00:17:01,720 ฟังก์ชั่นโหลดจะทำ 377 00:17:01,720 --> 00:17:05,119 หลังจากที่ iterates ห่วงฉันได้ใส่ ทุกอย่างลงในตารางแฮช 378 00:17:05,119 --> 00:17:07,810 ตอนนี้ปฏิเสธขนาดเล็กมี สิ่งที่สองฉันจะต้องแก้ไข 379 00:17:07,810 --> 00:17:10,030 และรุ่นที่ผมจะโพสต์ออนไลน์ จะมีทั้งหมดของความแตกต่างที่ 380 00:17:10,030 --> 00:17:12,670 แต่ส่วนใหญ่ก็จะเป็นบางส่วน การตรวจสอบข้อผิดพลาดและบางส่วนปรับแต่งเล็กน้อย 381 00:17:12,670 --> 00:17:14,044 แต่ที่แน่นอนส่วนสำคัญของมัน 382 00:17:14,044 --> 00:17:16,750 ถ้าตอนนี้ผมต้องการที่จะใช้ ฟังก์ชั่นที่เรียกว่า 383 00:17:16,750 --> 00:17:19,869 การตรวจสอบซึ่งคาดว่า คำว่าเป็นอาร์กิวเมนต์ของตน 384 00:17:19,869 --> 00:17:22,099 วิธีการที่ฉันอาจจะไปเกี่ยวกับการทำเช่นนั้น? 385 00:17:22,099 --> 00:17:30,020 ดีฉันก็จะบอกว่าถ้า ภายในโต๊ะของเราที่คำสถานที่ 386 00:17:30,020 --> 00:17:30,652 ถ้ามีการตั้งค่า 387 00:17:30,652 --> 00:17:32,360 ดังนั้นหากมี is-- ที่จริงคุณรู้อะไร 388 00:17:32,360 --> 00:17:34,830 ฉันจะทำมันใน บิตของ pseudocode 389 00:17:34,830 --> 00:17:36,020 แต่ความคิดที่เหมือนกัน 390 00:17:36,020 --> 00:17:41,640 หากที่เท่ากับความจริงกลับจริง 391 00:17:41,640 --> 00:17:43,890 ทั้งหมดขวา 392 00:17:43,890 --> 00:17:46,851 Else-- ชนิดที่คุณสามารถดูที่ นี้จะ going-- จะกลับเท็จ 393 00:17:46,851 --> 00:17:47,350 เสร็จสิ้น 394 00:17:47,350 --> 00:17:49,640 ตรวจสอบจะทำ 395 00:17:49,640 --> 00:17:50,940 >> สวยดีใช่มั้ย? 396 00:17:50,940 --> 00:17:52,560 และเพื่อให้สิ่งที่เป็นนี้จริงๆที่ได้รับ? 397 00:17:52,560 --> 00:17:53,680 และนี่เกินไปผมตัดมุมบางอย่าง 398 00:17:53,680 --> 00:17:56,020 ดูออนไลน์รุ่น สำหรับทุกความแตกต่างเล็กน้อย 399 00:17:56,020 --> 00:17:57,103 แต่นั่นเป็นส่วนสำคัญของมัน 400 00:17:57,103 --> 00:17:59,080 ดัชนีลงใน อาเรย์, a.k.a. 401 00:17:59,080 --> 00:18:02,910 ตารางแฮช, ดูว่ามีค่า มีถ้ามันตั้งค่าเป็นจริงและถ้าเป็นเช่นนั้น 402 00:18:02,910 --> 00:18:03,930 กลับจริง 403 00:18:03,930 --> 00:18:05,819 ดังนั้นเราจึงได้เหลาลง ทั้งหมดของความซับซ้อน 404 00:18:05,819 --> 00:18:07,110 ดังนั้นชนิดของใจเป่าใช่มั้ย? 405 00:18:07,110 --> 00:18:09,680 ฉันจะไม่รำคาญการตกแต่งด้วยขน, เพราะใน fact-- โอ้คุณรู้อะไร 406 00:18:09,680 --> 00:18:11,620 ใช่ขอจบด้วยขน 407 00:18:11,620 --> 00:18:18,940 >> ยกเลิกการโหลดในตารางแฮชอาจมีลักษณะ ฟังก์ชั่นเช่นขนกลับ 408 00:18:18,940 --> 00:18:19,930 ตกลงเพื่อให้เป็นขน 409 00:18:19,930 --> 00:18:21,350 เพราะไม่มีอะไร ขนใช่มั้ย? 410 00:18:21,350 --> 00:18:22,170 มี malloc ไม่ 411 00:18:22,170 --> 00:18:24,280 ผมไม่ได้ถามอย่างชัดเจน ระบบปฏิบัติการอะไร 412 00:18:24,280 --> 00:18:25,571 ฉันเพิ่งเริ่มต้นใช้ตัวแปร 413 00:18:25,571 --> 00:18:30,510 และเพื่อให้นี้ก็คือการประกาศของ คุณสมบัติของภาษาระดับที่สูงขึ้น 414 00:18:30,510 --> 00:18:32,940 ดังนั้นอีกครั้งส่วนใหญ่ในระยะนี้ เราได้รับการติดต่อลงที่นี่ 415 00:18:32,940 --> 00:18:34,280 กับซีในระดับต่ำสุด 416 00:18:34,280 --> 00:18:35,980 คุณสามารถดูหน่วยความจำของคอมพิวเตอร์ 417 00:18:35,980 --> 00:18:38,440 คุณสามารถสัมผัสสิ่งที่คุณ ต้องการในแรมของคอมพิวเตอร์ของคุณ 418 00:18:38,440 --> 00:18:39,440 ให้ดีขึ้นหรือแย่ลง 419 00:18:39,440 --> 00:18:41,760 >> ที่นี่เราจะ เพื่อให้ได้อำนาจ 420 00:18:41,760 --> 00:18:44,730 แต่พระเจ้าของฉันมองว่า รหัสน้อยมากที่ผมเขียน 421 00:18:44,730 --> 00:18:47,660 ในความเป็นจริงถ้าผมไม่ได้พูดคุย และพูดคุยมากกว่าการพิมพ์ของฉัน 422 00:18:47,660 --> 00:18:50,190 เราจะได้รับการดำเนินการกับ ตัวอย่างนี้ห้านาทีที่ผ่านมา 423 00:18:50,190 --> 00:18:52,150 ดังนั้นสิ่งที่ราคาถูกจ่าย? 424 00:18:52,150 --> 00:18:54,100 ดีให้มาดู 425 00:18:54,100 --> 00:18:55,340 ลองมาดู 426 00:18:55,340 --> 00:18:59,340 ฉันจะไปข้างหน้าและเรียก CS50 427 00:18:59,340 --> 00:19:02,160 ให้ฉันไปเป็นครั้งแรก ตัวอย่างปัจจุบันที่ 428 00:19:02,160 --> 00:19:03,970 ฉันมีไดเรกทอรีตำราเป็นมาก่อน 429 00:19:03,970 --> 00:19:08,520 ฉันจะเรียกใช้วิธีการแก้ปัญหาที่ มันมาพร้อมกับปัญหาการตั้งห้าเรียกว่า 430 00:19:08,520 --> 00:19:11,190 สะกดซึ่งอยู่ในบัญชีของ CS50 431 00:19:11,190 --> 00:19:14,040 >> และฉันจะรันบนบางสิ่งบางอย่าง ขนาดใหญ่เช่นคิงเจมส์ไบเบิล 432 00:19:14,040 --> 00:19:16,547 เพียงเพื่อให้เราจริงๆใส่ การแก้ปัญหาพนักงานในการทดสอบ 433 00:19:16,547 --> 00:19:19,130 ตอนนี้บางครั้งอินเทอร์เน็ตเป็น ช้าลงเล็กน้อยเล็ก ๆ น้อย ๆ ได้เร็วขึ้น 434 00:19:19,130 --> 00:19:20,338 อาจใช้เวลาสักครู่เพื่อเลื่อน 435 00:19:20,338 --> 00:19:23,730 แต่มันต้องใช้เวลารวมทั้งสิ้น 0.56 วินาที เพื่อตรวจสอบการสะกดคิงเจมส์ 436 00:19:23,730 --> 00:19:25,150 พระคัมภีร์ใช้วิธีพนักงาน 437 00:19:25,150 --> 00:19:25,620 ดังนั้นที่ดีงาม 438 00:19:25,620 --> 00:19:27,786 ขอแสดงอาจจะช้าลงมาก และที่ดีทั้งหมด 439 00:19:27,786 --> 00:19:30,090 แต่มันก็เป็นที่ถูกต้องที่นี่ 440 00:19:30,090 --> 00:19:32,440 เพื่อให้เป็นวิธีการแก้ปัญหาพนักงาน 441 00:19:32,440 --> 00:19:34,785 ถ้าผมไปในการทำความสะอาด PHP รุ่น 442 00:19:34,785 --> 00:19:36,990 และฉันจะทำอะไรเล็ก ๆ น้อย ๆ เหมือนสิ่งที่แสดงอบ 443 00:19:36,990 --> 00:19:39,720 เรากำลังจะใช้รหัสผมเขียน ก่อนหน้านี้ดังนั้นจึงเป็นเรื่องที่ถูกต้องอย่างสมบูรณ์แบบ 444 00:19:39,720 --> 00:19:42,678 เพราะรหัสที่ผมเขียนไม่ได้ไป มีความถูกต้องสมบูรณ์แบบเพียงแค่ตอนนี้ 445 00:19:42,678 --> 00:19:47,310 แต่ถ้าผมใช้รุ่น PHP, สิ่งที่ฉันมีให้เพิ่มขึ้นในวันนี้ 446 00:19:47,310 --> 00:19:49,980 ผมใช้เวลาห้านาที ใช้พีตั้งห้าฉันเรียกร้อง 447 00:19:49,980 --> 00:19:51,770 ราคามีอะไรฉันจ่ายเงิน? 448 00:19:51,770 --> 00:19:52,270 ใช่ 449 00:19:52,270 --> 00:19:52,937 >> ผู้ชม: ความเร็ว 450 00:19:52,937 --> 00:19:53,645 ลำโพง 1: ความเร็ว 451 00:19:53,645 --> 00:19:54,380 คุณหมายถึงอะไร? 452 00:19:54,380 --> 00:19:55,230 >> ผู้ชม: มันจะใช้เวลานาน 453 00:19:55,230 --> 00:19:55,660 >> ลำโพงที่ 1: สิทธิทั้งหมด 454 00:19:55,660 --> 00:19:56,160 มาดูกัน. 455 00:19:56,160 --> 00:19:59,590 มันจะใช้เวลานาน จะไม่เขียน แต่ที่จะรัน 456 00:19:59,590 --> 00:20:00,090 ใช่ 457 00:20:00,090 --> 00:20:00,960 ดังนั้นเรามาลองนี้ 458 00:20:00,960 --> 00:20:05,720 ดังนั้นที่นี่ฉันจะไปข้างหน้าและทำ PHP การสะกดและเพราะไฟล์ 459 00:20:05,720 --> 00:20:06,360 เรียกว่าสะกด 460 00:20:06,360 --> 00:20:07,580 ดังนั้นฉันไม่ได้เรียกใช้ พจนานุกรมจำ 461 00:20:07,580 --> 00:20:09,204 ผมใช้โปรแกรมที่เรียกว่าสะกด 462 00:20:09,204 --> 00:20:12,450 ฉันจะผ่านในเดียวกัน ไฟล์พระเจ้าเจมส์ที่ห้า 463 00:20:12,450 --> 00:20:14,377 มันบินโดย 464 00:20:14,377 --> 00:20:17,210 เพียงแค่นี้ก็อาจจะเป็นความเร็วอินเทอร์เน็ต จึงไม่อ่านมากเกินไปในที่ 465 00:20:17,210 --> 00:20:21,680 แต่ก็ไม่รู้สึกอีกต่อไปอย่างแน่นอน 466 00:20:21,680 --> 00:20:23,280 1.26 วินาที 467 00:20:23,280 --> 00:20:25,150 >> ตอนนี้ที่ยังคงสวย รวดเร็วแช่งใช่มั้ย? 468 00:20:25,150 --> 00:20:28,140 และเหตุผลเดียวที่รู้สึกเหมือน มากขึ้นเช่นสามหรือสี่หรือห้า 469 00:20:28,140 --> 00:20:30,515 วินาทีที่เพียงเพราะ อินเทอร์เน็ตได้ช้า 470 00:20:30,515 --> 00:20:33,980 เวลาที่เครื่องคอมพิวเตอร์ที่ใช้คือ 1.26 วินาทีเมื่อเทียบกับ 0.56 ผมคิดว่า 471 00:20:33,980 --> 00:20:35,880 ดังนั้นกว่าสองเท่าช้า 472 00:20:35,880 --> 00:20:39,170 ตอนนี้ที่ยังคงสาปสวย ได้อย่างรวดเร็ว แต่ก็การประกาศ 473 00:20:39,170 --> 00:20:40,860 ของจริงว่าราคาที่แน่นอน 474 00:20:40,860 --> 00:20:43,460 >> เพราะเราตีความ ในสายรหัสโดยบรรทัด 475 00:20:43,460 --> 00:20:46,740 และโปรแกรม PHP ที่มีการอ่านของฉัน รหัสด้านบนลงล่างซ้ายไปขวา 476 00:20:46,740 --> 00:20:47,940 ก็มีความคิดที่จะทำมากขึ้น 477 00:20:47,940 --> 00:20:50,430 มันจะต้องมีชนิดของการแปลง ภายในตัวของมันเอง 478 00:20:50,430 --> 00:20:53,464 ไปยังเครื่องที่สอดคล้องกัน รหัสได้ทันทีเพื่อที่จะพูด 479 00:20:53,464 --> 00:20:55,380 แม้ว่ากลศาสตร์ มีความแตกต่างกันเล็กน้อย 480 00:20:55,380 --> 00:20:59,430 แทนที่จะเป็นเพียงการให้อาหารกับ อินเทลซีพียูศูนย์ดิบและคน 481 00:20:59,430 --> 00:21:00,930 เข้าใจว่ามันกำเนิด 482 00:21:00,930 --> 00:21:04,110 >> ดังนั้นอย่างมือลง เราได้จ่ายเงินราคา 483 00:21:04,110 --> 00:21:09,120 และโค้ดที่เขียนในภาษาที่ เช่น PHP มีแนวโน้มที่จะชะลอตัวลง 484 00:21:09,120 --> 00:21:10,050 แต่พระเจ้า 485 00:21:10,050 --> 00:21:12,740 ดังนั้นตอนนี้เมื่อผมตรวจสอบการสะกดของฉัน ไฟล์ฉันใช้จ่ายเพิ่ม 0.7 486 00:21:12,740 --> 00:21:17,280 หรือเพื่อวินาทีเทียบกับ 20 ชั่วโมงในการดำเนินการ ได้เร็วขึ้นตรวจสอบการสะกดใช่มั้ย? 487 00:21:17,280 --> 00:21:18,397 เป็นชนิดของการค้าปิด 488 00:21:18,397 --> 00:21:20,980 และถ้าคุณเพิ่งเริ่มพี ตั้งห้าอาจจะไม่ได้ 20 ชั่วโมง 489 00:21:20,980 --> 00:21:22,188 อาจจะน้อยกว่าที่ 490 00:21:22,188 --> 00:21:23,600 แต่มันเป็นเรื่องการปิดการจริง 491 00:21:23,600 --> 00:21:27,820 และถ้าคุณกำลังใช้รหัสในที่ใหญ่จริงๆ ชุดข้อมูลหรือแม้กระทั่งบนฮาร์ดแวร์รุ่นเก่า 492 00:21:27,820 --> 00:21:32,650 ชนิดของความแตกต่าง แน่นอนสามารถเพิ่มขึ้น 493 00:21:32,650 --> 00:21:34,880 >> คำถามใด ๆ ป่านนี้? 494 00:21:34,880 --> 00:21:35,617 ใช่ 495 00:21:35,617 --> 00:21:36,492 >> ผู้ชม: [ไม่ได้ยิน] 496 00:21:36,492 --> 00:21:38,187 497 00:21:38,187 --> 00:21:39,978 ลำโพง 1: ขออภัยสามารถ คุณพูดมันอีกครั้ง? 498 00:21:39,978 --> 00:21:40,853 ผู้ชม: [ไม่ได้ยิน] 499 00:21:40,853 --> 00:21:43,326 500 00:21:43,326 --> 00:21:44,700 ลำโพงที่ 1: คุณกำลังให้เวลา 501 00:21:44,700 --> 00:21:45,283 ดีเพื่อใช่ 502 00:21:45,283 --> 00:21:47,322 คุณประหยัดเวลาโดยการ ไม่ได้มีการรวบรวมมัน 503 00:21:47,322 --> 00:21:48,530 ถ้านั่นคือสิ่งที่คุณขอ 504 00:21:48,530 --> 00:21:50,710 และแน่นอนใน CS50, ส่วนใหญ่ของโปรแกรม 505 00:21:50,710 --> 00:21:53,668 ถึงแม้ว่าพวกเขาอาจใช้เวลาสักครู่ ที่จะเขียนพวกเขากำลังค่อนข้างสั้น 506 00:21:53,668 --> 00:21:56,860 ไม่กี่โหลไม่กี่ร้อยสายรหัส ดังนั้นพวกเขาจึงรวบรวมสวยได้อย่างรวดเร็ว 507 00:21:56,860 --> 00:21:58,470 แต่เมื่อคุณเริ่มต้น การเขียนโปรแกรมที่ใหญ่กว่า 508 00:21:58,470 --> 00:22:01,511 เช่นถ้าคุณไมโครซอฟท์หรือคุณ Google และการเขียนโปรแกรมใหญ่จริงๆ 509 00:22:01,511 --> 00:22:05,360 ใน C หรือ C ++ หรือเรียบเรียงทำนองเดียวกัน ภาษาอาจจะใช้เวลาหลายวินาที 510 00:22:05,360 --> 00:22:08,577 หรือแม้กระทั่งนาทีหรือนานกว่าจะ รวบรวมนับล้านบรรทัดของรหัส 511 00:22:08,577 --> 00:22:10,660 และมีมากเกินไปว่า ความแตกต่างที่เกิดขึ้นที่จะเพิ่มขึ้น 512 00:22:10,660 --> 00:22:12,840 >> และในความเป็นจริงเมื่อเรา การเปลี่ยนแปลงในวันนี้ในวันเดียวกัน 513 00:22:12,840 --> 00:22:15,910 วันนี้กับการเขียนโปรแกรมเว็บ โดยใช้ PHP คุณ 514 00:22:15,910 --> 00:22:18,460 จะไปหามันก็มาก ความพึงพอใจมากขึ้นในการเขียนโค้ด 515 00:22:18,460 --> 00:22:21,501 เมื่อคุณไม่ต้องทำโง่เหล่านี้ ขั้นตอนเช่นการเปลี่ยนแปลงไปยังสถานีของคุณ 516 00:22:21,501 --> 00:22:24,202 หน้าต่างชนิดทำให้สวัสดีอีกครั้ง เรียกใช้โหลดหน้าต่าง 517 00:22:24,202 --> 00:22:25,910 เพียงเพื่อให้หลายคนโง่ ขั้นตอนกลไกที่ 518 00:22:25,910 --> 00:22:28,480 เพียงแค่ได้รับในทางของการทำ น่าสนใจการทำงานสนุก 519 00:22:28,480 --> 00:22:31,450 และแน่นอนว่าเราโยนออกไปกับ PHP 520 00:22:31,450 --> 00:22:34,960 และเราสามารถโต้ตอบ กับมันมากขึ้นอย่างรวดเร็ว 521 00:22:34,960 --> 00:22:35,495 ใช่ 522 00:22:35,495 --> 00:22:36,370 ผู้ชม: [ไม่ได้ยิน] 523 00:22:36,370 --> 00:22:40,294 524 00:22:40,294 --> 00:22:40,960 ลำโพงที่ 1: ตรวจสอบว่า 525 00:22:40,960 --> 00:22:42,876 ฉันสามารถชี้แจงสิ่งที่มัน หมายถึงการตีความ? 526 00:22:42,876 --> 00:22:45,870 เมื่อคุณรวบรวมภาษา เช่น C มันลงไป 527 00:22:45,870 --> 00:22:48,140 ในขณะที่เรากล่าวไปยังเครื่อง รหัสศูนย์และคน 528 00:22:48,140 --> 00:22:51,860 และ Intel ตัดสินใจปีที่ผ่านมาว่า รูปแบบบางอย่างของศูนย์และคน 529 00:22:51,860 --> 00:22:56,220 นอกจากเป็นตัวแทนหรือลบ หรือพิมพ์หรือการดำเนินงานพื้นฐานอื่น ๆ 530 00:22:56,220 --> 00:23:00,250 ในโลกของภาษาตีความ เช่น PHP หรือ JavaScript หรืองูหลาม 531 00:23:00,250 --> 00:23:03,120 หรือทับทิมหรือที่อัดแน่นของ คนอื่น ๆ แทนคน 532 00:23:03,120 --> 00:23:05,120 ได้เขียน interpreter-- ในกรณีนี้ 533 00:23:05,120 --> 00:23:09,770 ก็เรียกว่ายัง PHP, เหมือนกับ ชื่อของ language-- ที่เป็นหลัก 534 00:23:09,770 --> 00:23:13,840 มีวงขนาดใหญ่ในนั้นที่ iterates มากกว่าทุกบรรทัดของรหัสที่ 535 00:23:13,840 --> 00:23:18,170 ที่ฉันอาหารมันเป็น input เช่นสวัสดี จุด PHP หรือพจนานุกรมจุด PHP 536 00:23:18,170 --> 00:23:21,760 >> และจากนั้นคุณสามารถคิดของพวกเขาขนาดใหญ่ ห่วงว่ามีจำนวนมากที่มีเงื่อนไข 537 00:23:21,760 --> 00:23:26,340 และเงื่อนไขเหล่านั้นบอกว่าถ้า มนุษย์ได้เขียนคำหลักที่ 538 00:23:26,340 --> 00:23:28,470 เริ่มต้นทำของเขาหรือเธอ รหัสอีกครั้งและอีกครั้ง 539 00:23:28,470 --> 00:23:31,360 หรือถ้ามนุษย์มี เขียนบรรทัดของรหัส 540 00:23:31,360 --> 00:23:34,880 ถ้าเพียง แต่การดำเนินการของพวกเขา บรรทัดถัดไปตามเงื่อนไข 541 00:23:34,880 --> 00:23:37,740 ดังนั้นจึงเป็นอย่างแท้จริงเช่นการตีความ มันอยู่ในความรู้สึกของมนุษย์สาย 542 00:23:37,740 --> 00:23:39,660 โดยสายและที่เพียงแค่ต้องใช้เวลา 543 00:23:39,660 --> 00:23:41,340 มันต้องใช้ค่าใช้จ่าย 544 00:23:41,340 --> 00:23:44,189 และเพื่อให้เป็น price-- คำถามของดีที่เราจ่าย 545 00:23:44,189 --> 00:23:46,480 เพื่อขอทำสาธิตอีก ที่เล็ก ๆ น้อย ๆ อย่างมาก 546 00:23:46,480 --> 00:23:51,160 นอกจากนี้ผมว่าเป็นสนามเบสบอลที่นี้ ความน่าจะเป็น 90% ของความล้มเหลวอย่างน่ากลัว 547 00:23:51,160 --> 00:23:53,869 แต่คุณจะต้องประหลาดใจ มีความน่าจะเป็น 10% 548 00:23:53,869 --> 00:23:55,660 ดังนั้นทุกปีที่เราพยายาม การทำเช่นนี้โดยเรา 549 00:23:55,660 --> 00:23:59,061 พยายามที่จะเขียนโปรแกรมที่จะต้องผ่าน ปัญหาการตั้งศูนย์ที่คุณได้ 550 00:23:59,061 --> 00:24:02,060 ส่งหมายเลขโทรศัพท์ของคุณและ จำนวนมากของข้อมูลประชากรอื่น ๆ 551 00:24:02,060 --> 00:24:06,030 และเราเขียนโปรแกรม ส่งข้อความ 552 00:24:06,030 --> 00:24:08,540 และจากนั้นโทรศัพท์ของทุกคน เริ่ม beeping หรือสั่น 553 00:24:08,540 --> 00:24:11,460 และมันเป็นเรื่องที่น่าอัศจรรย์เพียงเพราะ ดีมองสิ่งที่คอมพิวเตอร์สามารถทำได้ 554 00:24:11,460 --> 00:24:13,840 >> นี้ไม่ค่อยทำงานอย่างถูกต้อง ดูเหมือนว่าส่วนใหญ่ 555 00:24:13,840 --> 00:24:16,800 เพราะผมมักจะได้รับการขึ้นบัญชีดำ โดย Gmail หรือบางบริการอื่น ๆ 556 00:24:16,800 --> 00:24:19,630 สำหรับจริงพยายามที่จะทำเช่นนี้ในขนาด 557 00:24:19,630 --> 00:24:24,940 แต่สิ่งที่ตลกเกินไปเนื่องจากเรา ไม่ได้มีทุกคนที่นี่ในวันนี้ 558 00:24:24,940 --> 00:24:27,690 สนุกจริงที่เวลาที่เราผ่านมา พยายามนี้สองปีที่ผ่านมา 559 00:24:27,690 --> 00:24:30,870 ผมคิดว่าผมเขียนโปรแกรม ที่นั่งอยู่ในวง iterating 560 00:24:30,870 --> 00:24:34,040 มากกว่านักเรียนทุกคนในชั้นเรียน และแต่ละของพวกเขาข้อความตัวอักษร 561 00:24:34,040 --> 00:24:37,534 และก็กล่าวว่าสิ่งที่ต้องการ ทำไมคุณไม่ในการบรรยาย? 562 00:24:37,534 --> 00:24:39,170 ความรักบอ CS50 563 00:24:39,170 --> 00:24:42,580 >> คุณมีความคิดว่าหลายขอโทษไม่มี และการจัดเรียงของอีเมลที่เจ็บปวด 564 00:24:42,580 --> 00:24:46,970 ผมได้รับในการตอบสนองจาก n ลบ 100 คนที่ไม่ได้อยู่ที่นี่ 565 00:24:46,970 --> 00:24:47,960 วันนั้น. 566 00:24:47,960 --> 00:24:52,116 และแม้ไม่ยี่หระ story-- ที่น่าอับอายมากขึ้น คุณรู้ว่าขอนำมันออกมี 567 00:24:52,116 --> 00:24:53,740 มันมีอยู่แล้วในวิดีโอไม่กี่ปีหลัง 568 00:24:53,740 --> 00:24:56,810 ดังนั้นคุณเร็ว ๆ นี้จะเห็นฉัน เขียนสำหรับวงโดย 569 00:24:56,810 --> 00:25:00,640 มันง่ายมากที่จะเขียนข้อผิดพลาดในการที่ สำหรับวงดังกล่าวว่าเป็นครั้งแรก 570 00:25:00,640 --> 00:25:02,800 ผ่านห่วงคุณ ส่งข้อความหนึ่ง 571 00:25:02,800 --> 00:25:06,190 >> ครั้งที่สองผ่านห่วงฉัน ควรจะมีการส่งข้อความมากขึ้น 572 00:25:06,190 --> 00:25:08,250 และจากนั้นหนึ่งข้อความเพิ่มเติม ข้อความและอีกหนึ่ง 573 00:25:08,250 --> 00:25:11,490 แต่มันกลับกลายเป็นถ้าคุณทำพิมพ์ผิด เมื่อเขียนโปรแกรมบางครั้งคุณ 574 00:25:11,490 --> 00:25:14,460 สามารถเขียนโปรแกรมที่ส่ง ข้อความแล้วสองข้อความ 575 00:25:14,460 --> 00:25:18,742 แล้วสามข้อความไปยังทุกคน ผู้ที่ได้รับแล้วข้อความ 576 00:25:18,742 --> 00:25:21,450 และที่คุณรู้ว่าการทำบางสิ่งบางอย่าง บวกกับบางสิ่งบางอย่างบวกกับบางสิ่งบางอย่าง 577 00:25:21,450 --> 00:25:25,910 บวกกับบางสิ่งบางอย่างที่มีขนาดใหญ่ O จำนวนมาก ข้อความหรือ n ยืด, 578 00:25:25,910 --> 00:25:29,830 หรือที่ $ 0.10 ข้อความ, $ 20,000 579 00:25:29,830 --> 00:25:33,700 >> โชคดีที่ผมตีควบคุม-C ก่อนหน้านั้น เกิดขึ้น แต่ผมไม่เป็นหนี้อย่างน้อยหนึ่ง 580 00:25:33,700 --> 00:25:37,550 ของรุ่นก่อนของคุณ $ 20 สำหรับ 200 บางข้อความแปลกที่ 581 00:25:37,550 --> 00:25:40,450 ไม่เพียง แต่เดินไปที่โทรศัพท์ของเขา แต่ ยังเป็นเหมือนโทรศัพท์พลิกเก่า 582 00:25:40,450 --> 00:25:43,520 จึงต้องการผลักดันให้ออกมาจากเขา หน่วยความจำข้อความส่วนบุคคลอื่น ๆ ทุกคน 583 00:25:43,520 --> 00:25:45,930 ข้อความที่เขามีอากาศจริง 584 00:25:45,930 --> 00:25:49,250 ดังนั้นเราจึงมีเป้าหมายหนึ่ง วันนี้ไม่ต้องทำ 585 00:25:49,250 --> 00:25:50,620 อาจจะเปิดโหมดเครื่องบิน 586 00:25:50,620 --> 00:25:51,120 ทั้งหมดขวา 587 00:25:51,120 --> 00:25:56,590 ดังนั้นขอไปเป็น โปรแกรมที่นี่ callled-- 588 00:25:56,590 --> 00:25:59,060 ที่ฉันจะเรียกจุดข้อความ PHP 589 00:25:59,060 --> 00:26:01,074 และล่วงหน้าฉันมีสองไฟล์ที่นี่ 590 00:26:01,074 --> 00:26:06,030 ฉันทำไฟล์สำหรับพนักงานเพียงที่มี ข้อมูลทั้งหมดของพนักงานทั้งหมดชื่อ 591 00:26:06,030 --> 00:26:07,260 จากเว็บไซต์ของหลักสูตรของ 592 00:26:07,260 --> 00:26:09,756 และแล้วตอนนี้ฉันเพียงแค่ใส่ บางตัวเลขปลอม 555-1212 593 00:26:09,756 --> 00:26:11,380 ดังนั้นเหล่านี้จะไม่จริงไปได้ทุกที่ 594 00:26:11,380 --> 00:26:15,140 แต่สังเกตเห็นภายในของไฟล์ CSV ที่ ซึ่งเราได้พูดคุยเกี่ยวกับเวลาสั้น ๆ ก่อนที่จะ 595 00:26:15,140 --> 00:26:16,540 ในบริบทของไฟล์ IO ซึ่ง 596 00:26:16,540 --> 00:26:18,730 >> อะไรไฟล์ CSV? 597 00:26:18,730 --> 00:26:19,970 คั่นด้วยเครื่องหมายจุลภาคตัวแปร 598 00:26:19,970 --> 00:26:24,400 และนี่คือชนิดเช่นมาก ฐานข้อมูลที่มีน้ำหนักเบาถ้าคุณจะ 599 00:26:24,400 --> 00:26:28,650 มีชนิดของการจัดเรียงของสี่เสา ในแฟ้มนี้และมีขรุขระ 600 00:26:28,650 --> 00:26:32,400 แต่จุลภาคเป็นหลัก เป็นตัวแทนของคอลัมน์ในแฟ้ม 601 00:26:32,400 --> 00:26:35,400 คอลัมน์แรกเป็น TF หรือชื่อของ CA 602 00:26:35,400 --> 00:26:37,800 คอลัมน์ที่สองเป็นชื่อสุดท้ายของพวกเขา 603 00:26:37,800 --> 00:26:39,820 คอลัมน์ที่สามเป็นหมายเลขโทรศัพท์ 604 00:26:39,820 --> 00:26:44,760 และคอลัมน์ที่สี่เห็นได้ชัด is-- คอลัมน์ที่สี่เห็นได้ชัดคืออะไร? 605 00:26:44,760 --> 00:26:45,870 ตกลงดังนั้นจึงเป็นผู้ให้บริการของพวกเขา 606 00:26:45,870 --> 00:26:47,180 ดังนั้น Verizon หรือ Sprint หรือสิ่งที่ไม่ 607 00:26:47,180 --> 00:26:48,620 และถ้าผม misspoke ก่อนหน้านี้ CSV 608 00:26:48,620 --> 00:26:51,800 คั่นด้วยเครื่องหมายจุลภาคเป็น CSV ที่นี่ 609 00:26:51,800 --> 00:26:54,260 >> ดังนั้นสิ่งที่ฉันสามารถทำอะไรกับเรื่องนี้? 610 00:26:54,260 --> 00:26:56,940 อย่างนี้เป็นเพียงแฟ้มข้อความขนาดใหญ่ และชนิดก็มีความยาวใช่มั้ย? 611 00:26:56,940 --> 00:26:58,690 เช่นนี้เป็นไปได้ เป็นชนิดที่น่ารำคาญ 612 00:26:58,690 --> 00:27:03,510 และปรากฎว่าที่ถ้าฉัน ต้องการที่จะส่งข้อความไปขอ 613 00:27:03,510 --> 00:27:05,180 อเล็กซ์บอกว่าที่นี่ 614 00:27:05,180 --> 00:27:09,690 ผมขอไปลงในเบราว์เซอร์ และออกจากโหมดเต็มหน้าจอ 615 00:27:09,690 --> 00:27:11,660 เพียงเพื่อให้ฉันสามารถสลับไปมา 616 00:27:11,660 --> 00:27:20,280 มันจะเปิดออกมาดูถ้าผมไป ที่นี่และเข้าสู่ Gmail ขวาทั้งหมด 617 00:27:20,280 --> 00:27:22,950 ไม่ได้ดูที่ส่วนนี้ 618 00:27:22,950 --> 00:27:23,880 เพียงแค่ผมได้เห็น 619 00:27:23,880 --> 00:27:26,551 620 00:27:26,551 --> 00:27:28,800 แน่นอน Livestream สามารถ ยังคงเห็นสิ่งที่ฉันทำ 621 00:27:28,800 --> 00:27:29,360 ทั้งหมดขวา 622 00:27:29,360 --> 00:27:31,850 >> ดังนั้นนี่เป็นเพียง Gmail ด้วย จอห์นฮาร์วาร์บัญชี 623 00:27:31,850 --> 00:27:34,000 ดังนั้นถ้าผมต้องการที่จะส่ง ข้อความไปยังอเล็กซ์ 624 00:27:34,000 --> 00:27:35,530 ฉันสามารถของหลักสูตรเขียนข้อความ 625 00:27:35,530 --> 00:27:38,410 และมันจะเปิดออกและฉันได้ ทดสอบกับอเล็กซ์ก่อนที่นี่ 626 00:27:38,410 --> 00:27:42,260 เพื่อให้คุณสามารถผนวกโดเมนบางอย่าง ชื่อไปยังหมายเลขโทรศัพท์ของผู้คน 627 00:27:42,260 --> 00:27:45,850 เพราะมีอยู่ในโลก สิ่งที่เรียกว่า SMS ไปยังเกตเวย์อีเมล 628 00:27:45,850 --> 00:27:50,000 ซึ่งเป็นวิธีที่จินตนาการของบอกทั้งหมด ของเราที่มีโทรศัพท์มือถือที่ 629 00:27:50,000 --> 00:27:53,200 มีหมายเลขโทรศัพท์ของหลักสูตร อาจมีสำหรับผู้ให้บริการของคุณ 630 00:27:53,200 --> 00:27:56,840 ปัจจัยบางอย่างเช่นที่ Vtext.com สำหรับข้อความ Verizon 631 00:27:56,840 --> 00:28:00,320 ดอทคอมที่คุณสามารถผนวกกับคุณ หมายเลขโทรศัพท์ส่วนบุคคลของตัวเองแล้ว 632 00:28:00,320 --> 00:28:03,540 คุณหรือเพื่อนหรือพ่อแม่ของคุณสามารถ ข้อความที่คุณตามที่อยู่ที่เฉพาะเจาะจง 633 00:28:03,540 --> 00:28:07,380 >> และ Verizon มีเซิร์ฟเวอร์อีเมล เซิร์ฟเวอร์ที่เมื่อได้รับอีเมลนี้ 634 00:28:07,380 --> 00:28:11,180 มีลักษณะที่เป็นส่วนหนึ่งที่เป็นตัวเลขแล้ว ใช้สิ่งที่วิเศษอุตสาหกรรมพิเศษ 635 00:28:11,180 --> 00:28:14,540 พวกเขามีจริงส่งออกไป คลื่นไปยังเซลล์ของคุณโดยเฉพาะ 636 00:28:14,540 --> 00:28:15,040 โทรศัพท์ 637 00:28:15,040 --> 00:28:18,030 ตอนนี้เป็นสิ่งที่ดีเพราะฉันทำไม่ได้ จริงๆรู้วิธีการส่งข้อความตัวอักษร 638 00:28:18,030 --> 00:28:20,460 หรือการเขียนโค้ดยัง สำหรับโทรศัพท์มือถือของฉัน 639 00:28:20,460 --> 00:28:23,580 และคุณอาจจะทำตรงนั้นสำหรับ โครงการสุดท้าย แต่สำหรับตอนนี้ทั้งหมด 640 00:28:23,580 --> 00:28:24,770 ฉันได้เป็นแล็ปท็อปของฉันที่นี่ 641 00:28:24,770 --> 00:28:29,830 ดังนั้นผมจึงอยากจะย้ำกว่า CSV ที่ ไฟล์บรรทัดโดยบรรทัดโดยบรรทัดต่อบรรทัด 642 00:28:29,830 --> 00:28:35,160 คว้าแต่ละพนักงานของหมายเลขโทรศัพท์ที่ และผู้ให้บริการของพวกเขาและ programatically, 643 00:28:35,160 --> 00:28:39,770 เชื่อมที่มีที่เชื่อมต่อโทรศัพท์ จำนวนที่มีชื่อโดเมนที่เหมาะสม 644 00:28:39,770 --> 00:28:40,820 แล้วส่งอีเมล์ 645 00:28:40,820 --> 00:28:41,940 >> เพื่อให้เป็นจำนวนมากของขั้นตอน 646 00:28:41,940 --> 00:28:45,530 และโชคดีที่ทำใน C. มันเป็นฝันร้ายของสถ​​านการณ์ที่ 647 00:28:45,530 --> 00:28:48,350 การเปิดไฟล์ที่จะอ่านมัน บรรทัดต่อบรรทัดโดยบรรทัดที่คุณ 648 00:28:48,350 --> 00:28:51,100 จะเห็นหรือเร็ว ๆ นี้อาจจะได้เห็น ที่มีปัญหาตั้งห้าถ้าไม่ 649 00:28:51,100 --> 00:28:53,560 ปัญหาตั้งสี่แล้ว แบบไดนามิกเชื่อม 650 00:28:53,560 --> 00:28:57,020 สองสายด้วยกันเพราะในซี จะใช้เวลาสองสตริงและรวมพวกเขา 651 00:28:57,020 --> 00:29:00,900 สิ่งที่คุณน้อยที่สุด ต้องทำส่วนใหญ่มีแนวโน้ม? 652 00:29:00,900 --> 00:29:03,020 คุณจำเป็นต้องประกาศหน่วยความจำมากใช่มั้ย? 653 00:29:03,020 --> 00:29:04,710 และถาม malloc ฉันสามารถมีหน่วยความจำมากขึ้น? 654 00:29:04,710 --> 00:29:07,060 ดังนั้นผมจึงสามารถใส่ครึ่งหนึ่งของนี้ ที่นี่ครึ่งหนึ่งของที่นี่ 655 00:29:07,060 --> 00:29:08,150 มันเป็นเพียงขั้นตอนจำนวนมาก 656 00:29:08,150 --> 00:29:10,310 และโดยจุดที่คุณได้สูญเสีย ความสนใจในการสาธิตน้อยโง่ 657 00:29:10,310 --> 00:29:11,851 ที่คุณทำเสียงเตือนโทรศัพท์ของทุกคน 658 00:29:11,851 --> 00:29:14,590 ขอทำเรียงลำดับของ PHP นี้ สไตล์ด้วยเหตุนี้เราเพียงแค่ 659 00:29:14,590 --> 00:29:16,210 เริ่มใช้มากขึ้นจากอ่างครัวที่ 660 00:29:16,210 --> 00:29:18,050 >> และความคิดที่มี พื้นฐานเดียวกัน 661 00:29:18,050 --> 00:29:20,710 แต่เราไม่ต้องกังวลมากเกินไป มากเกี่ยวกับที่ระดับที่ต่ำกว่า 662 00:29:20,710 --> 00:29:22,950 ดังนั้นเรามาดูวิธีการที่ฉันอาจ ไปเกี่ยวกับการทำเช่นนี้ 663 00:29:22,950 --> 00:29:26,664 และเพียงเพื่อให้ฉันทำไม่ได้ ซ้ำความผิดพลาดที่ผ่านมา 664 00:29:26,664 --> 00:29:28,330 ผมเคยเขียนบันทึกบางส่วนสำหรับตัวเองที่นี่ 665 00:29:28,330 --> 00:29:31,070 และให้ดูว่าฉันสามารถเดินไปกับเรา ผ่านบางส่วนของขั้นตอนพื้นฐาน 666 00:29:31,070 --> 00:29:33,861 แล้วเพื่อประโยชน์เวลาเราจะ บางทีอาจจะตัดบางมุมในที่สุด 667 00:29:33,861 --> 00:29:38,007 ฉันจะไปข้างหน้าและทำเปิด วงเล็บ PHP ในการเริ่มต้นไฟล์นี้ 668 00:29:38,007 --> 00:29:39,590 และฉันจะไปข้างหน้าและทำเช่นนี้ 669 00:29:39,590 --> 00:29:41,490 จัดการไฟล์ที่คุณจะ เร็ว ๆ นี้เห็นจริง 670 00:29:41,490 --> 00:29:44,790 เรียกฟังก์ชั่นที่เรียกว่าเอฟเปิด 671 00:29:44,790 --> 00:29:46,280 และจำไว้ว่าเปิดไฟล์ 672 00:29:46,280 --> 00:29:48,800 และคำพูดที่นำมาอ้าง, อาร์หมายถึงสิ่งที่อีกครั้งหรือไม่ 673 00:29:48,800 --> 00:29:49,800 เพียงแค่เปิดสำหรับการอ่าน 674 00:29:49,800 --> 00:29:51,210 ตอนนี้อยู่ในชุดหน้าสำหรับคุณทำอย่างนี้ 675 00:29:51,210 --> 00:29:54,500 และจัดการอาจจะเป็นอะไร ฟู, บาร์, รูปปั้น, ชื่อตัวแปรใด ๆ 676 00:29:54,500 --> 00:29:57,470 แต่โดยทั่วไปคอมพิวเตอร์ นักวิทยาศาสตร์จะเรียกไฟล์ที่เปิด 677 00:29:57,470 --> 00:30:00,962 ให้คุณจัดการไฟล์ บางสิ่งบางอย่างที่จะถือเข้าเพื่อที่จะพูด 678 00:30:00,962 --> 00:30:02,670 ฉันแค่จะทำ การตรวจสอบข้อผิดพลาดบางอย่าง 679 00:30:02,670 --> 00:30:07,260 ดังนั้นถ้าจับเป็นเท็จเช่นเดียวกับ ใน C ฉันจะทำอะไรบางอย่างเช่น 680 00:30:07,260 --> 00:30:09,545 ไม่สามารถเปิดไฟล์, n ทับขวา 681 00:30:09,545 --> 00:30:11,420 และแล้วฉันแค่ไป ไปข้างหน้าและทางออก 682 00:30:11,420 --> 00:30:14,340 และมันจะเปิดออกใน PHP ผมไม่ได้อยู่ในฟังก์ชั่น 683 00:30:14,340 --> 00:30:16,160 ไม่มีฟังก์ชั่นหลักที่นี่เป็น 684 00:30:16,160 --> 00:30:17,450 ดังนั้นผมจึงไม่กลับมาต่อ 685 00:30:17,450 --> 00:30:18,120 ผมออกจาก 686 00:30:18,120 --> 00:30:19,619 ซึ่งเป็นหลักในสิ่งเดียวกัน 687 00:30:19,619 --> 00:30:22,510 และฉันออกกับหนึ่งปีอาจ 688 00:30:22,510 --> 00:30:24,220 หนึ่งก็หมายถึงข้อผิดพลาดของการจัดเรียงบาง 689 00:30:24,220 --> 00:30:25,580 มันไม่เป็นศูนย์ดังนั้นจึงเป็นข้อผิดพลาด 690 00:30:25,580 --> 00:30:30,220 >> สิทธิทั้งหมดดังนั้นหากผมลงที่นี่ในขณะนี้ ในโปรแกรมของฉันฉันได้เปิดไฟล์ 691 00:30:30,220 --> 00:30:34,250 ฉันจะไปข้างหน้าและประกาศ อาร์เรย์เรียกว่าอยู่ที่ 692 00:30:34,250 --> 00:30:38,610 และใน C ฉันจะต้องรู้ว่า ขนาดของอาร์เรย์ล่วงหน้าใช่มั้ย? 693 00:30:38,610 --> 00:30:41,910 หรือฉันจะต้องประกาศนี้ เป็นตัวชี้และจากนั้นใช้ malloc 694 00:30:41,910 --> 00:30:44,720 และแล้วทุกครั้งที่ผมอ่าน ผ่านแถวในแฟ้มอื่น 695 00:30:44,720 --> 00:30:46,620 ฉันจะต้อง malloc หน่วยความจำมากขึ้น malloc หน่วยความจำเพิ่มเติม 696 00:30:46,620 --> 00:30:47,703 นั่นคืออาการปวดคอ 697 00:30:47,703 --> 00:30:50,950 และโชคดี, PHP และทับทิม และงูหลามและ JavaScript พวกเขา 698 00:30:50,950 --> 00:30:53,880 จะเติบโตอาร์เรย์ของคุณ ให้คุณโดยอัตโนมัติ 699 00:30:53,880 --> 00:30:54,830 ไม่มี malloc มากขึ้น 700 00:30:54,830 --> 00:30:56,227 ไม่มีการจัดการหน่วยความจำเพิ่มเติม 701 00:30:56,227 --> 00:30:57,560 คอมพิวเตอร์จะดูแลว่า 702 00:30:57,560 --> 00:31:00,330 แต่ราคาที่คุณจ่าย 703 00:31:00,330 --> 00:31:01,350 มันเป็นเรื่องเล็ก ๆ น้อย ๆ ช้าลง 704 00:31:01,350 --> 00:31:03,190 และสำหรับโปรแกรมเช่นนี้ เราจะไม่แจ้งให้ทราบล่วงหน้า 705 00:31:03,190 --> 00:31:04,720 เรากำลังจะไปส่ง 100 ข้อความ 706 00:31:04,720 --> 00:31:06,136 ยกตัวอย่างเช่นจะไม่รู้สึกว่ามัน 707 00:31:06,136 --> 00:31:08,430 ไอทีจริงๆเท่านั้นเริ่ม เรื่องภาษาของคุณเลือก 708 00:31:08,430 --> 00:31:11,490 เมื่อข้อมูลหรือโปรแกรมของคุณ ได้รับจริงๆขนาดใหญ่จริงๆ 709 00:31:11,490 --> 00:31:14,120 เป็นจะเป็นกรณีที่เกิดขึ้นดังนั้น กับสิ่งที่ตามเว็บของเรา 710 00:31:14,120 --> 00:31:15,450 >> แต่สำหรับตอนนี้ขอเคลื่อนไปข้างหน้า 711 00:31:15,450 --> 00:31:20,120 ในขณะที่มันจะเปิดออกมี ฟังก์ชั่นใน C ที่เรียกว่าได้รับฉ CSV 712 00:31:20,120 --> 00:31:24,570 ได้รับไฟล์ CSV ที่ใช้ ยื่นจับเป็นอาร์กิวเมนต์ของตน 713 00:31:24,570 --> 00:31:28,810 และจะดำเนินการแล้วแถวโดย แถวโดยแถวเพื่อที่จะอ่านในแถว 714 00:31:28,810 --> 00:31:30,964 ดังนั้นมันก็อ่านบรรทัด ข้อความจากไฟล์ 715 00:31:30,964 --> 00:31:34,130 แต่สิ่งที่ดีเกี่ยวกับฟังก์ชั่นนี้ มันไม่เพียง แต่มือฉันบรรทัดของข้อความ 716 00:31:34,130 --> 00:31:37,320 มันจะมองหาเครื่องหมายจุลภาคเหล่านั้น และแยกสาย 717 00:31:37,320 --> 00:31:41,740 และที่จะแยกสายหมายถึงการแยก มันเกี่ยวกับค่าบางอย่างในบริบทนี้ 718 00:31:41,740 --> 00:31:45,510 >> ในคำอื่น ๆ เครื่องหมายดอลลาร์ แถวเป็นตัวแปรที่เป็น 719 00:31:45,510 --> 00:31:47,010 จะให้ฉันพวงของดัชนี 720 00:31:47,010 --> 00:31:49,635 นี้จะเป็น คอลัมน์แรกในรูปแบบ CSV ของฉัน 721 00:31:49,635 --> 00:31:52,510 นี้เป็นไปได้ที่สอง คอลัมน์นี้เป็นไปได้ที่สาม 722 00:31:52,510 --> 00:31:53,968 และเป็นไปได้ที่สี่ 723 00:31:53,968 --> 00:31:57,440 เพราะการเรียกคืนและ Excel ไม่ ความร่วมมือครั้งสุดท้ายที่เราทำอย่างนี้ 724 00:31:57,440 --> 00:32:03,350 แต่ถ้าผมดาวน์โหลดพนักงานดอท CSV 725 00:32:03,350 --> 00:32:04,940 ขออภัยไม่เปลี่ยนชื่อ 726 00:32:04,940 --> 00:32:09,120 ถ้าฉันดาวน์โหลด dot พนักงาน CSV และพยายามเปิดมัน 727 00:32:09,120 --> 00:32:12,510 ฉันได้แล้ว registered-- โอ้ฉัน ไม่ได้ปรับปรุง Excel ตั้งแต่ครั้งสุดท้ายที่ 728 00:32:12,510 --> 00:32:15,880 คุณจะเห็นว่าพนักงานในจุด CSV ผมมีสี่เสา 729 00:32:15,880 --> 00:32:18,720 ดังนั้นเมื่อผมอ่านใน แถวแรกสำหรับแอ๊บบี้ที่นี่ 730 00:32:18,720 --> 00:32:23,582 ดอลล่าแถวป้าย 0 แอ๊บบี้ ดอลล่าแถวสัญญาณหนึ่งที่ลียง 731 00:32:23,582 --> 00:32:27,740 เงินดอลลาร์เข้าสู่ระบบแถวสองคือจำนวนของเธอ แล้วผู้ให้บริการโทรศัพท์ของเธอ 732 00:32:27,740 --> 00:32:28,410 >> ดังนั้นนั่นคือทั้งหมดที่ 733 00:32:28,410 --> 00:32:30,740 และนั่นเป็นเรื่องดีเพราะผม ไม่ต้องคิดออกตอนนี้ 734 00:32:30,740 --> 00:32:32,800 ที่ทุกจุลภาคเหล่านั้นเป็นจริง 735 00:32:32,800 --> 00:32:35,300 ดังนั้นฉันจะไปข้างหน้าและ ทำเช่นนี้ให้ความหมายว่า 736 00:32:35,300 --> 00:32:38,960 ฉันจะบอกว่าชื่อของเธอคือ ในวงเล็บแถวศูนย์ตามที่สัญญา 737 00:32:38,960 --> 00:32:41,150 และฉันจะ grab-- และ ที่จริงคุณรู้อะไร 738 00:32:41,150 --> 00:32:42,780 ฉันจะไม่ต้องกังวลเกี่ยวกับ ชื่อของเธอในกรณีนี้ 739 00:32:42,780 --> 00:32:43,988 ฉันจะให้มันง่าย 740 00:32:43,988 --> 00:32:48,610 ฉันจะทำหมายเลขของเธอคือ ในวงเล็บสองแถวที่ผมคิดว่า 741 00:32:48,610 --> 00:32:50,510 และผู้ให้บริการของเธออยู่ในที่ไหน 742 00:32:50,510 --> 00:32:53,405 แถวที่สามมากกว่า 743 00:32:53,405 --> 00:32:54,280 ดังนั้นมีอะไรใหม่ 744 00:32:54,280 --> 00:32:56,770 มันเป็นเพียงศูนย์การจัดทำดัชนีเป็นอาร์เรย์ 745 00:32:56,770 --> 00:32:58,760 >> และตอนนี้ผมกำลังจะทำต่อไปนี้ 746 00:32:58,760 --> 00:33:03,930 หากผู้ให้บริการเท่ากับเท่ากับ AT & T-- ฉันแค่จะต้อง loop-- 747 00:33:03,930 --> 00:33:06,790 ผมต้องการสร้างอีเมล ที่อยู่ที่มีลักษณะเช่นนี้ 748 00:33:06,790 --> 00:33:12,320 มันเป็นไปได้ที่ 617-555-1212 ที่มันเป็นสิ่งที่ text.ATT.net, 749 00:33:12,320 --> 00:33:13,490 คือสิ่งที่ฉันต้องการจะทำ 750 00:33:13,490 --> 00:33:15,260 ดังนั้นฉันจะทำเช่นนี้? 751 00:33:15,260 --> 00:33:16,730 ฉันจะทำอย่างไรต่อไป 752 00:33:16,730 --> 00:33:22,460 ที่อยู่ของเธอเป็นไปได้จำนวนของเธอ และตอนนี้ให้ฉันไปข้างหน้าและทำเช่นนี้ 753 00:33:22,460 --> 00:33:23,760 นี่คือบางส่วนของไวยากรณ์ขี้ขลาด 754 00:33:23,760 --> 00:33:27,250 ฉันสามารถทำเคล็ดลับ s เปอร์เซ็นต์ แต่ที่จริงผมก็สามารถทำเช่นนี้ 755 00:33:27,250 --> 00:33:29,900 >> ดังนั้นนี่คือสิ่งที่ PHP แต่ ขอพิจารณาสิ่งที่ฉันทำ 756 00:33:29,900 --> 00:33:31,630 สกุลเงินดอลลาร์เข้าสู่ระบบที่อยู่ใน ซ้ายเพียงตัวแปร 757 00:33:31,630 --> 00:33:32,300 ให้ฉันตัวแปร 758 00:33:32,300 --> 00:33:33,390 ฉันไม่ได้มีการระบุชนิด 759 00:33:33,390 --> 00:33:34,570 PHP จะคิดออก 760 00:33:34,570 --> 00:33:36,580 ในด้านขวามือ สิ่งที่ชนิดข้อมูล 761 00:33:36,580 --> 00:33:38,399 ว่าสิ่งที่ทั้งใน ด้านขวามือ? 762 00:33:38,399 --> 00:33:40,190 ดูเหมือนว่าสตริง เพราะมีคู่ 763 00:33:40,190 --> 00:33:42,280 คำพูดด้านขวาซ้ายสุดและไกล 764 00:33:42,280 --> 00:33:44,210 ตอนนี้มีบางไวยากรณ์ใหม่ขี้ขลาดที่นี่ 765 00:33:44,210 --> 00:33:47,550 มีวงเล็บปีกกาคือ, และจำนวนเครื่องหมายดอลลาร์ 766 00:33:47,550 --> 00:33:52,860 แต่ใช้เวลาคาดเดาสิ่งที่เป็นไวยากรณ์ที่ อาจจะบอก PHP ที่จะทำสำหรับฉันหรือไม่ 767 00:33:52,860 --> 00:33:53,360 ใช่ 768 00:33:53,360 --> 00:33:54,630 เพียงแค่ใส่ค่าที่มี 769 00:33:54,630 --> 00:33:55,530 ดังนั้น s ร้อยละไม่มี 770 00:33:55,530 --> 00:33:58,160 เราสามารถใช้ฉพิมพ์หรือ s ฉพิมพ์หรือสิ่งที่ต้องการมัน 771 00:33:58,160 --> 00:34:00,070 แต่ PHP และจำนวนมาก ภาษาระดับที่สูงขึ้น 772 00:34:00,070 --> 00:34:03,070 คุณจะเห็นว่าคุณสามารถทำได้ ทำสิ่งเดียวกันการทำงานอาจจะ 773 00:34:03,070 --> 00:34:04,019 หกวิธีที่แตกต่างกัน 774 00:34:04,019 --> 00:34:06,310 และดังนั้นจึงเริ่มที่จะกลายเป็น เป็นเรื่องของการออกแบบหรือรูปแบบ 775 00:34:06,310 --> 00:34:09,902 ดังนั้นนี่เป็นเพียงวิธีลับมอง ที่บอกให้ฉันที่อยู่อีเมล 776 00:34:09,902 --> 00:34:12,110 แต่ plug-in ในจำนวน ระหว่างวงเล็บปีกกาเหล่านี้ 777 00:34:12,110 --> 00:34:15,440 และวงเล็บปีกกาจะไม่ จบลงในที่อยู่สุดท้าย 778 00:34:15,440 --> 00:34:18,010 >> ตอนนี้เราสามารถข้ามบางส่วนของ เส้นเหล่านี้เพื่อประโยชน์ของเวลา 779 00:34:18,010 --> 00:34:21,210 ดังนั้นหากผู้ให้บริการเท่ากับ เท่ากับ verHorizo​​n-- ขออภัย, 780 00:34:21,210 --> 00:34:24,989 Verizon-- ฉันต้องการจะทำบางสิ่งบางอย่าง คล้ายกันมากที่อยู่ที่ได้รับ, 781 00:34:24,989 --> 00:34:27,569 อ้างนำมาอ้างจำนวนที่ text.ATT.net 782 00:34:27,569 --> 00:34:30,380 783 00:34:30,380 --> 00:34:35,050 และแล้วฉันจะทำแบบเดียวกัน สิ่งที่เหลืออยู่ของผู้ให้บริการที่ 784 00:34:35,050 --> 00:34:37,090 แต่ฉันก็จะทำจุดจุดจุดสำหรับในตอนนี้ 785 00:34:37,090 --> 00:34:43,050 และตอนนี้เรามาคิดว่า ฉันต้องการเพิ่มอาร์เรย์ผลักดัน 786 00:34:43,050 --> 00:34:45,969 ฉันต้องการที่จะเพิ่ม อาร์เรย์ที่อยู่ที่เรียกว่า 787 00:34:45,969 --> 00:34:50,409 >> ที่อยู่นี้นี้เป็นวิธีที่คุณ เพิ่มสิ่งที่อาร์เรย์ใน PHP 788 00:34:50,409 --> 00:34:51,610 คุณไม่จำเป็นต้องที่จะทำ malloc 789 00:34:51,610 --> 00:34:53,068 คุณไม่ได้มีการปรับขนาดอาร์เรย์ 790 00:34:53,068 --> 00:34:54,259 คุณเพียงแค่บอกว่าอาร์เรย์ผลักดัน 791 00:34:54,259 --> 00:34:57,300 สิ่งใดที่คุณต้องการที่จะ push-- สิ่งอาร์เรย์ คุณต้องการที่จะผลักดันบางสิ่งบางอย่างไปยัง? 792 00:34:57,300 --> 00:34:58,000 ที่อยู่ 793 00:34:58,000 --> 00:34:59,550 สิ่งที่คุณต้องการที่จะผลักดันไปยังที่อยู่? 794 00:34:59,550 --> 00:35:00,350 ที่อยู่ 795 00:35:00,350 --> 00:35:02,430 และในความเป็นจริงถ้าคุณ อยากจะฉลาด 796 00:35:02,430 --> 00:35:05,610 บางน้ำตาลประโยค สำหรับเรื่องนี้เพื่อที่จะพูด 797 00:35:05,610 --> 00:35:10,230 ซึ่งก็หมายความว่าคุณสามารถทำเช่นนี้ใน วิธีที่น่ารักจะทำเช่นนี้ 798 00:35:10,230 --> 00:35:14,060 นั่นก็มีผลกระทบของการเจริญเติบโต อาร์เรย์ที่อยู่ตามขนาดหนึ่ง 799 00:35:14,060 --> 00:35:17,130 แล้วป๋อมที่เพิ่มเติม ที่อยู่อีเมลเป็นมัน 800 00:35:17,130 --> 00:35:17,630 ใช่ 801 00:35:17,630 --> 00:35:19,730 >> ผู้ชม: [ไม่ได้ยิน] 802 00:35:19,730 --> 00:35:22,520 >> ลำโพงที่ 1: พิมพ์ผิดใน อื่น if-- โอ้ผู้ให้บริการ 803 00:35:22,520 --> 00:35:23,070 มันโอเค. 804 00:35:23,070 --> 00:35:26,971 นอกจากนี้ยังจะไม่ชอบความล้มเหลวของฉันไป การดำเนินการเป็นส่วนหนึ่งของโปรแกรมนี้ 805 00:35:26,971 --> 00:35:27,470 หลังจากนั้น. 806 00:35:27,470 --> 00:35:28,810 แต่ขอขอบคุณสำหรับการจับ 807 00:35:28,810 --> 00:35:30,671 หนึ่งในข้อผิดพลาดมากขึ้น 808 00:35:30,671 --> 00:35:31,170 ขอขอบคุณ. 809 00:35:31,170 --> 00:35:33,746 เราต้องการนี​​้จะ Vtext.com 810 00:35:33,746 --> 00:35:34,340 ใช่ 811 00:35:34,340 --> 00:35:34,839 ทั้งหมดขวา 812 00:35:34,839 --> 00:35:36,330 เพื่อที่นี้ไม่ปล่อยให้เรา? 813 00:35:36,330 --> 00:35:38,224 เราได้เขียนรหัสเพื่อเปิดไฟล์ 814 00:35:38,224 --> 00:35:40,390 เรามีห่วงย้ำ มากกว่าแถวในไฟล์ 815 00:35:40,390 --> 00:35:43,650 เรามีรหัสที่จะเพิ่มของฉัน อาร์เรย์หนึ่งในเวลาที่ถูกต้อง 816 00:35:43,650 --> 00:35:44,790 ที่อยู่อีเมลที่จัดรูปแบบ 817 00:35:44,790 --> 00:35:48,480 ดังนั้นสิ่งที่จริงยังคงอยู่คือการส่ง อีเมลไปที่แต่ละคนเหล่านี้ 818 00:35:48,480 --> 00:35:52,830 >> ดังนั้นผมจึงได้ไปข้างหน้าและ พร้อมตัวเองดังต่อไปนี้ 819 00:35:52,830 --> 00:35:59,580 สิ่งที่ผมกำลังจะทำที่นี่ is-- และขอ ไปข้างหน้าและข้ามไปยังบางรหัสที่เกิดขึ้นจริง 820 00:35:59,580 --> 00:36:00,620 ซึ่งมีลักษณะเช่นนี้ 821 00:36:00,620 --> 00:36:02,950 ดังนั้นนี่คือก่อนอบ รุ่นที่ผมเขียนไว้ก่อนหน้านี้ 822 00:36:02,950 --> 00:36:04,700 และแจ้งให้ทราบฉันเสร็จ การใช้ Sprint 823 00:36:04,700 --> 00:36:06,130 ฉันเสร็จสิ้นการดำเนินการของ T-Mobile 824 00:36:06,130 --> 00:36:08,020 ฉันเสร็จสิ้นการดำเนินการมือถือเวอร์จิน 825 00:36:08,020 --> 00:36:09,622 และเราจะต้องขออภัยล่วงหน้า 826 00:36:09,622 --> 00:36:12,080 มีผู้ให้บริการเพียงไม่กี่ว่า นักเรียนบางคนในชั้นเรียนได้ 827 00:36:12,080 --> 00:36:14,640 ที่ฉันไม่ได้รำคาญแจง ในที่นี่ถ้าเงื่อนไข 828 00:36:14,640 --> 00:36:16,015 ดังนั้นไม่ทั้งหมดตำราจะออกไปข้างนอก 829 00:36:16,015 --> 00:36:17,556 แต่ขอดูอะไรที่ฉันต้องทำ 830 00:36:17,556 --> 00:36:19,660 ฉันปิดแฟ้มเพียง เหมือนในพีตั้งสี่ 831 00:36:19,660 --> 00:36:20,835 >> และนี่คือไวยากรณ์ใหม่ 832 00:36:20,835 --> 00:36:22,710 และเราจะเห็นเพียงเล็กน้อย บิตนี้เมื่อเวลาผ่านไป 833 00:36:22,710 --> 00:36:24,450 โดยเฉพาะอย่างยิ่งกับพีตั้งเจ็ดแปด 834 00:36:24,450 --> 00:36:28,140 แต่นี้เป็นไวยากรณ์สำหรับการสร้าง ชนิดพิเศษของโครงสร้าง 835 00:36:28,140 --> 00:36:31,490 มันจะเปิดออกมีห้องสมุดที่ มาพร้อมกับ PHP, PHP จดหมายที่เรียกว่า 836 00:36:31,490 --> 00:36:33,840 โดยมีวัตถุประสงค์ในชีวิตก็คือ โปรแกรมส่งอีเมล 837 00:36:33,840 --> 00:36:36,840 มันเป็นคนอื่นเขียนว่ารหัส ทำให้มันง่ายขึ้นสำหรับเราที่จะส่งอีเมล 838 00:36:36,840 --> 00:36:39,131 ดังนั้นเราจึงไม่ต้องเก็บ จะกลับมาใช้ Gmail 839 00:36:39,131 --> 00:36:41,151 และวางในที่อยู่อีเมลของผู้คน 840 00:36:41,151 --> 00:36:44,150 มีทั้งกลุ่มของเส้นที่นี่ ที่สุจริตฉันเพียงแค่ชนิดของการคัดลอก 841 00:36:44,150 --> 00:36:45,660 และวางจากเอกสาร 842 00:36:45,660 --> 00:36:47,409 และในความเป็นจริงถ้าคุณ อยากรู้อยากเห็นผมออกทั้งหมด 843 00:36:47,409 --> 00:36:50,550 ของ URL ของเอกสารที่ ในรหัสที่เราจะโพสต์ในภายหลัง 844 00:36:50,550 --> 00:36:52,360 และแจ้งให้ทราบว่าในหมู่ สิ่งที่ฉันทำ 845 00:36:52,360 --> 00:36:55,710 คือฉันบอกห้องสมุดนี้ ใช้เซิร์ฟเวอร์ของ Gmail ใช่มั้ย? 846 00:36:55,710 --> 00:36:59,360 SMTP เราได้พูดคุยสั้น ๆ เกี่ยวกับเมื่อเรา อยู่ที่มหาวิทยาลัยเยลเกี่ยวกับการเป็นจดหมายที่เรียบง่าย 847 00:36:59,360 --> 00:37:00,110 โปรโตคอลการถ่ายโอน 848 00:37:00,110 --> 00:37:02,920 มันเป็นโปรโตคอลที่ เซิร์ฟเวอร์ที่ใช้ในการส่งอีเมล์ 849 00:37:02,920 --> 00:37:05,150 และ Gmail that's-- มีหนึ่งในบรรดา 850 00:37:05,150 --> 00:37:07,290 พอร์ตนี้เป็นจำนวนพอร์ต TCP 851 00:37:07,290 --> 00:37:09,630 ก็ปรับถ้าคุณ ยังไม่เคยเห็นมาก่อน 587 852 00:37:09,630 --> 00:37:11,420 เพียงแค่รู้ว่าจากเอกสาร 853 00:37:11,420 --> 00:37:12,250 นี่คือชื่อของฉัน 854 00:37:12,250 --> 00:37:13,670 ฉันจะใช้บอท CF50 855 00:37:13,670 --> 00:37:16,690 และในช่วงเวลาที่ฉันแค่จะไป พิมพ์รหัสผ่านที่เกิดขึ้นจริงของ ธ​​ ปท 856 00:37:16,690 --> 00:37:18,690 และจากนั้นก็ลงที่นี่สังเกตเห็นสิ่งที่ยังคงอยู่ 857 00:37:18,690 --> 00:37:22,840 >> ฉันตั้งจากที่อยู่ ที่จะบอทที่ CS50.net 858 00:37:22,840 --> 00:37:26,240 ฉันคิดว่าฉันจะไม่เสียใจที่ส่ง ข้อความไปยัง 800 คนที่ 859 00:37:26,240 --> 00:37:30,590 บอกว่าคิดถึงคุณบอรัก CS50 บางที สำหรับผู้ที่ไม่สามารถทำให้มันในวันนี้ 860 00:37:30,590 --> 00:37:33,160 และแล้วในสาย 76, สิ่งที่ฉันจะทำอย่างไร 861 00:37:33,160 --> 00:37:39,010 ชนิดของรูปลักษณ์ที่เหมือนซีนี้ดังนั้นสำหรับฉัน เท่ากับ 0, n equals-- ในขณะนี้นับเป็นของใหม่ 862 00:37:39,010 --> 00:37:42,077 แต่กลับกลายเป็นว่าถ้าคุณต้องการที่จะได้รับ จำนวนของสิ่งที่อยู่ในอาร์เรย์ 863 00:37:42,077 --> 00:37:43,660 คุณไม่ได้ที่จะจำมันอีกต่อไป 864 00:37:43,660 --> 00:37:45,370 คุณก็สามารถถาม ฟังก์ชั่นที่เรียกว่านับ 865 00:37:45,370 --> 00:37:48,320 และมันจะบอกคุณว่าหลาย ที่อยู่อยู่ในอาเรย์ที่ 866 00:37:48,320 --> 00:37:53,210 >> และแล้วฉันจะเพิ่ม ที่อยู่เพื่ออีเมล์ 867 00:37:53,210 --> 00:37:55,090 และฉันรู้ว่านี้ โดยใช้เอกสาร 868 00:37:55,090 --> 00:37:56,900 มีฟังก์ชั่นเพิ่มเป็นอยู่ 869 00:37:56,900 --> 00:37:58,980 และตอนนี้มีการแจ้งให้ทราบล่วงหน้า เป็นหนึ่งในชิ้นส่วนของไวยากรณ์ 870 00:37:58,980 --> 00:38:01,470 เราได้เห็นแบบนี้มาก่อน ใน C. ที่คล้ายกันในจิตวิญญาณ 871 00:38:01,470 --> 00:38:04,100 คุณสามารถคิดว่าเครื่องหมายดอลลาร์ จดหมายเป็นตัวแปรซึ่งเป็น 872 00:38:04,100 --> 00:38:08,100 แต่มันเป็นโครงสร้างภายในของ ที่ไม่ได้เป็นคุณสมบัติเฉพาะ 873 00:38:08,100 --> 00:38:09,400 ตัวแปรถ้าคุณจะ 874 00:38:09,400 --> 00:38:13,480 แต่ปรากฎว่าใน PHP ซึ่ง คือการเขียนโปรแกรมเชิงวัตถุ 875 00:38:13,480 --> 00:38:16,520 ภาษาเช่น Java ถ้าคุณเอา APCS 876 00:38:16,520 --> 00:38:21,420 >> จดหมายเครื่องหมายดอลลาร์ถ้าคุณต้องการ to-- นอกจากนี้ยังมีฟังก์ชั่นภายในของมัน 877 00:38:21,420 --> 00:38:22,380 หรือวิธีการ 878 00:38:22,380 --> 00:38:24,720 ดังนั้นนี่คือที่จะบอกว่า พิเศษ PHP จดหมาย 879 00:38:24,720 --> 00:38:29,280 ห้องสมุดถ้าฉันมีตัวแปรดังกล่าว ถ้าผมต้องการที่จะเรียกฟังก์ชั่นที่ 880 00:38:29,280 --> 00:38:31,559 มาพร้อมกับห้องสมุดที่ สำหรับวัตถุประสงค์ของว​​ันนี้ 881 00:38:31,559 --> 00:38:33,100 เพียงแค่รู้ว่าคุณใช้เครื่องหมายลูกศร 882 00:38:33,100 --> 00:38:34,150 มีเครื่องหมายจุดไม่ได้ 883 00:38:34,150 --> 00:38:35,220 มันเป็นเพียงลูกศร 884 00:38:35,220 --> 00:38:36,380 แต่นั่นไม่ใช่ตัวชี้ 885 00:38:36,380 --> 00:38:38,680 มันเป็นเพียงแค่ยืมมาจากไวยากรณ์ของ C 886 00:38:38,680 --> 00:38:43,620 ดังนั้นเรียกเพิ่มที่อยู่ภายใน วัตถุห้องสมุดนี้หรือตัวแปร 887 00:38:43,620 --> 00:38:44,440 >> ทั้งหมดขวา 888 00:38:44,440 --> 00:38:45,570 นี้เป็นสายที่มีมนต์ขลัง 889 00:38:45,570 --> 00:38:46,740 นั่นเป็นวิธีที่ผมส่งอีเมล์ 890 00:38:46,740 --> 00:38:50,040 นั่นคือเทียบเท่ากับการเปิดขึ้น Gmail พิมพ์ออกและกดปุ่มส่ง 891 00:38:50,040 --> 00:38:54,870 แต่มันจะส่งแทน ส่งอีเมลไปยังที่อยู่นี้กับร่างกายนี้ 892 00:38:54,870 --> 00:38:57,120 จาก ธ ปท CS50 893 00:38:57,120 --> 00:38:58,710 และสายที่สำคัญในขณะนี้ 894 00:38:58,710 --> 00:39:03,130 บรรทัดนี้ก็หายไปเหมือน 2011 เมื่อฉันคิดว่าฉันพยายามที่ผ่านมานี้ 895 00:39:03,130 --> 00:39:05,640 สายว่ามีแน่นอน ล้างอยู่ 896 00:39:05,640 --> 00:39:07,920 ดังนั้นเหตุผลถ้าฉัน ไม่ล้างอยู่ 897 00:39:07,920 --> 00:39:11,740 หลังจากที่ซ้ำกันเป็นครั้งแรก ส่งอีเมลหรือข้อความไปที่อลิซ 898 00:39:11,740 --> 00:39:14,320 ครั้งที่สองไป Alice และ Bob ที่สาม 899 00:39:14,320 --> 00:39:17,870 ไปที่อลิซและบ๊อบและชาร์ลี ด้วยเหตุนี้ความผิดพลาดที่มีราคาแพงมาก 900 00:39:17,870 --> 00:39:18,760 ฉันทำในปีนั้น 901 00:39:18,760 --> 00:39:21,080 >> ดังนั้นเรามาดู 902 00:39:21,080 --> 00:39:24,200 มีคำถามใด ๆ ก่อนที่เราจะส่งทุกข้อความ 903 00:39:24,200 --> 00:39:28,210 ข้อความมีโอกาสร้อยละ 10? 904 00:39:28,210 --> 00:39:28,940 มีคำถามอะไรไหม? 905 00:39:28,940 --> 00:39:30,330 ทั้งหมดขวา 906 00:39:30,330 --> 00:39:36,100 ขอฉันไปที่นี่และการเปลี่ยนแปลง รหัสผ่านกับสิ่งที่ควรจะทำงาน 907 00:39:36,100 --> 00:39:37,780 มีแนวโน้มที่จะได้รับการขึ้นบัญชีดำโดย Gmail 908 00:39:37,780 --> 00:39:39,821 ดังนั้นพวกเขาอาจจะไม่ทั้งหมดไป ออกเนื่องจากพวกเขาอาจจะ 909 00:39:39,821 --> 00:39:42,960 ไม่ต้องการให้เราส่งอีเมล 800 ในห่วงทั้งหมดในครั้งเดียว 910 00:39:42,960 --> 00:39:45,140 ตั้งแต่ที่ไม่ พฤติกรรมของมนุษย์โดยเฉพาะอย่างยิ่ง 911 00:39:45,140 --> 00:39:47,460 >> โอ้ฉันจะเปลี่ยนสิ่งอื่น ๆ ที่หนึ่ง 912 00:39:47,460 --> 00:39:50,850 ขึ้นที่ด้านบนฉันจะ sent-- เปลี่ยนไฟล์ให้กับนักเรียนจุด CSV 913 00:39:50,850 --> 00:39:55,420 และผมก็จะไม่เปิดนี้ แต่นี้เป็น ไฟล์ CSV เหมือนกับไม่ได้ 100 พนักงาน 914 00:39:55,420 --> 00:39:58,970 แต่นักเรียน 800 เพียง จาก Harvard เพราะเยล 915 00:39:58,970 --> 00:40:00,207 มีช่องตุลาคมสัปดาห์นี้ 916 00:40:00,207 --> 00:40:03,290 และดูเหมือนว่าชนิดของสิ่งกระตุก จะทำอย่างไรกับข้อความทั้งหมดของพวกเขาว่าทำไม 917 00:40:03,290 --> 00:40:04,750 พวกเขาไม่ได้ในชั้นเรียนในวันหยุด 918 00:40:04,750 --> 00:40:05,250 มันโอเค. 919 00:40:05,250 --> 00:40:08,310 เพียงแค่นักศึกษาฮาร์วาร์ วันนี้ภายในของแฟ้มที่ 920 00:40:08,310 --> 00:40:12,320 และตอนนี้ขอกลับไป เพื่อหน้าต่าง terminal ของฉัน 921 00:40:12,320 --> 00:40:13,710 ผมชนิดของประสาท 922 00:40:13,710 --> 00:40:22,000 >> ตกลงดังนั้นตอนนี้ฉันจะไปลงใน ไดเรกทอรีและ PHP ข้อความ dot PHP 923 00:40:22,000 --> 00:40:24,950 วิธีการเกี่ยวกับหนึ่งในอาสาสมัครผู้กล้าหาญ? 924 00:40:24,950 --> 00:40:26,690 ดังนั้นผมจึงไม่อยากให้เรื่องนี้กับฉัน 925 00:40:26,690 --> 00:40:28,410 ตกลงมาขึ้น 926 00:40:28,410 --> 00:40:29,162 คุณชื่ออะไร? 927 00:40:29,162 --> 00:40:29,662 MAYA: มายา 928 00:40:29,662 --> 00:40:30,328 ลำโพงที่ 1: มายา 929 00:40:30,328 --> 00:40:31,610 มาถึงมายา 930 00:40:31,610 --> 00:40:34,120 ทั้งหมดขวา 931 00:40:34,120 --> 00:40:35,389 ลองมาดูว่าการทำงานนี้ 932 00:40:35,389 --> 00:40:38,430 ฉันใส่ที่อยู่อีเมลของตัวเองใน file-- หมายเลขโทรศัพท์ของตัวเองในแฟ้ม 933 00:40:38,430 --> 00:40:40,110 เพื่อที่หวังว่าฉันจะได้รับอย่างใดอย่างหนึ่งเช่นกัน 934 00:40:40,110 --> 00:40:40,819 ยินดีที่ได้พบคุณ. 935 00:40:40,819 --> 00:40:41,443 MAYA: ในทำนองเดียวกัน 936 00:40:41,443 --> 00:40:44,510 ลำโพง 1: ดังนั้นสิ่งที่คุณต้องทำคือ กด Enter เพื่อส่ง 800 ข้อความ 937 00:40:44,510 --> 00:40:45,466 ถ้าฉันไม่ได้กรูขึ้น 938 00:40:45,466 --> 00:40:51,106 939 00:40:51,106 --> 00:40:51,606 นีซ 940 00:40:51,606 --> 00:40:55,556 941 00:40:55,556 --> 00:40:58,430 อาจจะใช้เวลาในขณะที่สถิติ จนกว่าเราจะได้รับไปยังอีเมล address-- 942 00:40:58,430 --> 00:41:00,573 ข้อความที่ ในห้องพักได้ในขณะนี้ 943 00:41:00,573 --> 00:41:03,880 944 00:41:03,880 --> 00:41:05,390 Let 's อิทธิพลและดู 945 00:41:05,390 --> 00:41:06,940 >> ผู้ชม: [ผิวปาก] 946 00:41:06,940 --> 00:41:08,270 >> ลำโพง 1: โอ้ใช่ 947 00:41:08,270 --> 00:41:09,230 >> ผู้ชม: โอ้ gotcha 948 00:41:09,230 --> 00:41:16,720 949 00:41:16,720 --> 00:41:19,180 >> ลำโพงที่ 1: สำหรับลูป are-- นี้ ไม่ได้ช้าเพราะ PHP 950 00:41:19,180 --> 00:41:21,810 นี่คือช้าเพราะ Gmail มีการควบคุมปริมาณและเราไม่ได้ 951 00:41:21,810 --> 00:41:25,170 ให้เราส่งมากกว่า เช่นเดียวอีเมลต่อวินาที 952 00:41:25,170 --> 00:41:26,300 สิ่งใด? 953 00:41:26,300 --> 00:41:29,990 นี่เป็นสิ่งที่ยากสำหรับผมที่จะทดสอบที่ บ้านที่มีเพียงฉันและเป็นหนึ่งในโทรศัพท์ของฉันดังนั้น 954 00:41:29,990 --> 00:41:37,630 955 00:41:37,630 --> 00:41:41,111 เป็นที่หวังจากบอท? 956 00:41:41,111 --> 00:41:41,610 ใช่? 957 00:41:41,610 --> 00:41:42,110 ไม่ได้หรือไม่ 958 00:41:42,110 --> 00:41:44,760 959 00:41:44,760 --> 00:41:46,620 บอกว่าใช่. 960 00:41:46,620 --> 00:41:47,479 ไม่ได้หรือไม่ 961 00:41:47,479 --> 00:41:49,374 มันมาจากเพื่อน? 962 00:41:49,374 --> 00:41:49,874 ที่น่าอึดอัดใจ 963 00:41:49,874 --> 00:41:50,374 ตกลง. 964 00:41:50,374 --> 00:41:56,580 965 00:41:56,580 --> 00:42:00,090 ค่อนข้างมั่นใจว่าจะทำงานแม้ว่า 966 00:42:00,090 --> 00:42:00,910 เอ่อโอ้. 967 00:42:00,910 --> 00:42:03,190 พวกเขา black-- โอ้รอสักครู่ 968 00:42:03,190 --> 00:42:04,280 โอ้คุณรู้อะไรไหม 969 00:42:04,280 --> 00:42:06,100 กรุณารอสักครู่. 970 00:42:06,100 --> 00:42:07,802 เพียงมายาและ I-- Mia เป็นมันได้หรือไม่ 971 00:42:07,802 --> 00:42:08,301 MAYA: มายา 972 00:42:08,301 --> 00:42:12,110 ลำโพงที่ 1: มายาจะไป รู้ว่าสิ่งที่ผมทำผิดที่นี่ 973 00:42:12,110 --> 00:42:14,890 โอ้รอสักครู่ 974 00:42:14,890 --> 00:42:23,320 ผมคิดว่าผมเพิ่งส่ง 100 ข้อความไปยัง 555-1212 975 00:42:23,320 --> 00:42:24,346 รอ. 976 00:42:24,346 --> 00:42:28,080 977 00:42:28,080 --> 00:42:29,270 ฉันไม่สามารถชนะในปีใด 978 00:42:29,270 --> 00:42:30,180 ตกลง. 979 00:42:30,180 --> 00:42:30,680 มายา? 980 00:42:30,680 --> 00:42:33,530 981 00:42:33,530 --> 00:42:36,219 แก้ไขปัญหาที่โพสต์ในการผลิต 982 00:42:36,219 --> 00:42:36,718 บ้า! 983 00:42:36,718 --> 00:42:39,430 984 00:42:39,430 --> 00:42:40,390 ต่อไปนี้จากที่อยู่ 985 00:42:40,390 --> 00:42:41,301 ตกลงยืนตาม 986 00:42:41,301 --> 00:42:41,800 ขอโทษ 987 00:42:41,800 --> 00:42:44,550 988 00:42:44,550 --> 00:42:47,080 มันเจ็บปวดทุกปี 989 00:42:47,080 --> 00:42:48,640 ตกลงช่วงเวลาหนึ่ง 990 00:42:48,640 --> 00:42:50,530 ดีจัง. 991 00:42:50,530 --> 00:42:54,010 ฉันกำลังแทนจะทำเช่นนี้ 992 00:42:54,010 --> 00:42:55,470 ที่อยู่พิมพ์ 993 00:42:55,470 --> 00:42:56,030 ตกลงยืนตาม 994 00:42:56,030 --> 00:43:01,340 พิมพ์ที่อยู่ผมวงเล็บ 995 00:43:01,340 --> 00:43:02,710 ใช่ฉันชอบที่ 996 00:43:02,710 --> 00:43:10,220 ดอลลาร์ sign-- ตกลงฉันจะอธิบายสิ่งที่ฉัน ทำในช่วงเวลาหลังจากที่ผมได้ทำงานนี้ 997 00:43:10,220 --> 00:43:11,670 ทุกปี. 998 00:43:11,670 --> 00:43:13,125 ตกลงนี่เราไป 999 00:43:13,125 --> 00:43:15,750 ฉันมี just-- และฉันไม่ต้องการ ที่จะแสดงหมายเลขโทรศัพท์ของทุกคน 1000 00:43:15,750 --> 00:43:17,740 แต่มายาสามารถยืนยันได้ กับพยักหน้าของหัว 1001 00:43:17,740 --> 00:43:20,800 ที่เธอเห็นทุกคน หมายเลขโทรศัพท์ในชั้นเรียน 1002 00:43:20,800 --> 00:43:26,750 ที่ฉันจะคัดลอกลง โปรแกรมที่เรียกว่า Gmail 1003 00:43:26,750 --> 00:43:30,860 และถ้าใน Gmail ทำในสิ่งที่เราต้องการที่จะพูด? 1004 00:43:30,860 --> 00:43:32,137 คิดถึงคุณ. 1005 00:43:32,137 --> 00:43:33,220 Love-- ที่ไม่ได้มาจากผม 1006 00:43:33,220 --> 00:43:35,230 ฉันยังไม่ได้ตีแม้กระทั่งส่งยัง 1007 00:43:35,230 --> 00:43:39,450 ถ้าอย่างนั้นเราไปข้างหน้าและทำ นี้ถ้าฉันสามารถซูมเข้า 1008 00:43:39,450 --> 00:43:40,300 ตกลง. 1009 00:43:40,300 --> 00:43:42,480 ดังนั้นฉันใช้โปรแกรมที่เรียกว่า Gmail ตอนนี้ 1010 00:43:42,480 --> 00:43:44,490 หากยาที่คุณต้องการ คลิกปุ่มส่ง, 1011 00:43:44,490 --> 00:43:46,970 เราจะจำลองสิ่งที่ รหัสควรจะทำ 1012 00:43:46,970 --> 00:43:54,630 1013 00:43:54,630 --> 00:43:55,254 >> สิ่งใด? 1014 00:43:55,254 --> 00:43:56,062 >> [ดังขึ้น] 1015 00:43:56,062 --> 00:43:56,870 >> ผู้ชม: อ๋อ 1016 00:43:56,870 --> 00:43:58,030 >> ลำโพง 1: ใช่? 1017 00:43:58,030 --> 00:43:59,210 ความรอด? 1018 00:43:59,210 --> 00:44:00,427 >> ผู้ชม: อ๋อ 1019 00:44:00,427 --> 00:44:01,260 ลำโพง 1: นางสาวคุณ 1020 00:44:01,260 --> 00:44:02,718 และฉันจะส่งออกส่วนที่เหลือ 1021 00:44:02,718 --> 00:44:06,060 ฉันส่งออกครึ่งหนึ่งเพราะผมไม่ได้คิดว่า Gmail จะช่วยให้ผู้ที่ผ่านไป 1022 00:44:06,060 --> 00:44:12,410 ดังนั้นเพียงแค่จำไว้ว่าวันนี้เป็นวันที่ ที่คุณได้เรียนรู้ว่าฉันสามารถใช้ Gmail 1023 00:44:12,410 --> 00:44:14,977 1024 00:44:14,977 --> 00:44:15,810 นั่นเป็นที่น่ากลัว 1025 00:44:15,810 --> 00:44:17,140 เสียงปรบมือใหญ่ที่จะมายา 1026 00:44:17,140 --> 00:44:18,980 ขอขอบคุณ. 1027 00:44:18,980 --> 00:44:21,280 สิทธิทั้งหมดเพื่อ 1028 00:44:21,280 --> 00:44:22,210 อะไร 1029 00:44:22,210 --> 00:44:23,140 >> [ดังขึ้น] 1030 00:44:23,140 --> 00:44:25,010 1031 00:44:25,010 --> 00:44:26,580 >> เราได้ดังขึ้นไม่กี่ใช่? 1032 00:44:26,580 --> 00:44:27,080 ทั้งหมดขวา 1033 00:44:27,080 --> 00:44:30,590 ตอนนี้ฉันกำลังจะได้รับ 700 จริงๆ อีเมลที่ไม่มีความสุขกลับมาจากเพื่อนร่วมชั้น 1034 00:44:30,590 --> 00:44:32,400 ดังนั้นอย่างน้อยเราก็จะเห็น หากที่คุ้มค่า 1035 00:44:32,400 --> 00:44:33,300 ดังนั้นสิ่งที่ผิดพลาด? 1036 00:44:33,300 --> 00:44:35,300 ฉันจะคิดออกว่าไปทำอะไร ที่ไม่ถูกต้องตามความเป็นจริง, 1037 00:44:35,300 --> 00:44:38,340 แต่เพียงแค่มองวิธีการที่ง่าย มันก็จะทำเช่นนั้นใน PHP 1038 00:44:38,340 --> 00:44:44,598 ดังนั้นสิ่งที่เราสามารถทำจริงในขณะนี้ว่า เรามีการแสดงออกของ PHP นี้ 1039 00:44:44,598 --> 00:44:45,970 was-- ที่น่ากลัว 1040 00:44:45,970 --> 00:44:46,480 ทั้งหมดขวา 1041 00:44:46,480 --> 00:44:48,430 เพื่อให้เป็นสิ่งที่ควรจะได้ไปออก 1042 00:44:48,430 --> 00:44:52,770 นี้ได้รับการทดสอบฉันเช้าวันนี้ของฉัน โทรศัพท์หน้าจอที่แท้จริงของโทรศัพท์ของฉัน 1043 00:44:52,770 --> 00:44:56,180 >> แต่ตอนนี้ขอพิจารณาว่าทำไม เรากำลังจริงแนะนำ 1044 00:44:56,180 --> 00:44:57,840 ทุกสิ่งนี้ในสถานที่แรก 1045 00:44:57,840 --> 00:45:01,625 ดังนั้นเป้าหมายคือไม่ให้ เขียนโปรแกรมเหล่านี้ว่า 1046 00:45:01,625 --> 00:45:03,250 มีการเขียนที่บรรทัดคำสั่งใช่มั้ย? 1047 00:45:03,250 --> 00:45:05,000 ดังนั้นฉันจึงเขียนที่เรียบง่าย สวัสดีโปรแกรมที่ผมเขียน 1048 00:45:05,000 --> 00:45:09,155 โปรแกรมเล็ก ๆ น้อย ๆ ที่ไม่เงื่อนไข, และใช้สายอ่านและอื่น ๆ 1049 00:45:09,155 --> 00:45:11,530 และในทางทฤษฎีฉันเขียน โปรแกรมที่ส่งออก 1050 00:45:11,530 --> 00:45:14,290 800 ข้อความ, หรือจะให้ 800 1051 00:45:14,290 --> 00:45:16,830 และโปรแกรมที่เป็นทั้งหมด ยังคงทำงานที่บรรทัดคำสั่ง 1052 00:45:16,830 --> 00:45:18,538 และที่แน่นอนคือ ไม่เว็บใช่มั้ย? 1053 00:45:18,538 --> 00:45:22,160 เป้าหมายตอนนี้คือการเริ่มต้นใช้งาน สิ่งที่ผมเรียกร้องคือง่ายต่อการใช้ 1054 00:45:22,160 --> 00:45:24,720 ภาษา daresay ขึ้น ภาษาที่มีประสิทธิภาพในแง่ 1055 00:45:24,720 --> 00:45:27,104 ของคุณสมบัติที่ มาพร้อมกับมันที่จะเริ่มต้น 1056 00:45:27,104 --> 00:45:29,850 การเขียนรหัสที่สร้างหน้าเว็บ 1057 00:45:29,850 --> 00:45:33,248 >> ดังนั้นเวลาที่ผ่านมาและเมื่อสัปดาห์ที่แล้ว เราได้พูดคุยเกี่ยวกับ HTTP และ HTML 1058 00:45:33,248 --> 00:45:36,350 และสิ่งที่ดีเกี่ยวกับ HTML ก็คือว่ามันเป็นเพียงข้อความที่บริสุทธิ์ 1059 00:45:36,350 --> 00:45:38,220 และข้อความอย่างแน่นอน บางสิ่งบางอย่างที่คุณสามารถ 1060 00:45:38,220 --> 00:45:42,040 พิมพ์ตัวอักษรโดยเรียกการพิมพ์ ฟังก์ชั่นหรือฟังก์ชั่นการพิมพ์ 1061 00:45:42,040 --> 00:45:46,160 และแน่นอนว่าเป็นสิ่งที่ PHP เป็น ตอนนี้จะช่วยให้เราสามารถที่จะทำ 1062 00:45:46,160 --> 00:45:48,610 ดังนั้นในหมู่ตัวอย่างที่เรา มีในรหัสที่มาของวันนี้ 1063 00:45:48,610 --> 00:45:51,610 นอกเหนือไปจากบางส่วนของรหัส ที่ผมนำขึ้นมีช่วงเวลาที่ผ่านมา 1064 00:45:51,610 --> 00:45:55,440 เรามีโปรแกรมเช่นนี้เช่น 1065 00:45:55,440 --> 00:45:58,760 Froshims หรือน้องใหม่ ภายในการกีฬาเป็นจริง 1066 00:45:58,760 --> 00:46:01,500 หนึ่งใน extracurriculars แรก ผมได้มีส่วนร่วมกับปีที่ผ่านมา 1067 00:46:01,500 --> 00:46:03,750 และเพื่อนร่วมห้องของฉันและฉันมี บางเด็กคนอื่น ๆ ในมหาวิทยาลัย 1068 00:46:03,750 --> 00:46:05,280 ที่ใช้ในการเรียกใช้โปรแกรม froshims 1069 00:46:05,280 --> 00:46:07,420 ฉันได้รับข้อความของฉันตอนนี้ 1070 00:46:07,420 --> 00:46:14,030 >> ตอนนี้เราจึงกลับมาในวันนี้เพื่อให้ เป็น 1996 หรือเพื่อให้มีอินเทอร์เน็ต 1071 00:46:14,030 --> 00:46:17,395 แต่มี process-- ไม่มี เป็นเว็บไซต์ที่ไม่มี froshims 1072 00:46:17,395 --> 00:46:20,270 ดังนั้นถ้าคุณต้องการที่จะลงทะเบียนสำหรับ ฟุตบอลหรือวอลเล่ย์หรืออะไรก็ตาม 1073 00:46:20,270 --> 00:46:22,240 ที่คุณจะกรอกสิ่งนี้ เรียกว่าชิ้นส่วนของกระดาษ 1074 00:46:22,240 --> 00:46:25,060 และคุณจะเดินข้ามฮาร์วาร์ ลานและคุณจะเลื่อน 1075 00:46:25,060 --> 00:46:29,230 ลงในช่องจดหมายของทนายที่ อยู่ใน Wigglesworth หนึ่งในหอพัก 1076 00:46:29,230 --> 00:46:31,270 และนี่ถูกที่คุณลงทะเบียน 1077 00:46:31,270 --> 00:46:33,570 และเขาหรือเธอก็จะ เขียนอีเมลไปที่คุณ 1078 00:46:33,570 --> 00:46:36,514 ด้วยตนเองเหมือนฉัน ก็ไม่ได้อยู่ที่นี่กับมายา 1079 00:46:36,514 --> 00:46:38,930 และแล้วคุณจะได้รับการยืนยัน เป็นที่ได้รับการจดทะเบียน 1080 00:46:38,930 --> 00:46:40,840 >> ดังนั้นนี่เป็นเหมือนต่ำ แขวนผลไม้เพื่อที่จะพูด 1081 00:46:40,840 --> 00:46:42,930 มันเป็นชนิดของโง่ที่ เราได้ใช้กระดาษนี้ 1082 00:46:42,930 --> 00:46:45,024 ฉันอยากให้เราสามารถ เพียงแค่ไปในเว็บไซต์ 1083 00:46:45,024 --> 00:46:47,440 หรือมีนักศึกษาไปใน เว็บไซต์ลงทะเบียนสำหรับการเล่นกีฬา 1084 00:46:47,440 --> 00:46:50,398 และเพียงแค่อัตโนมัติมากของสิ่งนี้ โดยการใส่ชื่อและอีเมลของพวกเขา 1085 00:46:50,398 --> 00:46:51,850 และอื่น ๆ ลงในฐานข้อมูล 1086 00:46:51,850 --> 00:46:56,510 และในความเป็นจริงรุ่นแรกมาก ของเว็บไซต์ที่ใช้น่าเกลียดสุด HTML, 1087 00:46:56,510 --> 00:46:58,195 อาจจะมองอะไรเช่นนี้ 1088 00:46:58,195 --> 00:47:01,070 มันเป็นความจริงกระทบกระเทียบมากขึ้น มองที่น่าอายกว่านี้กลับ 1089 00:47:01,070 --> 00:47:01,460 แล้วก็ 1090 00:47:01,460 --> 00:47:02,890 แต่ผมใช้ภาษาการเขียนโปรแกรม 1091 00:47:02,890 --> 00:47:06,060 ไม่ PHP แต่เรียกว่าค่อนข้างเพิร์ล ซึ่งเป็นภาษาที่เก่า 1092 00:47:06,060 --> 00:47:07,251 แต่ลักษณะคล้ายกันมากในจิตวิญญาณ 1093 00:47:07,251 --> 00:47:09,000 และฉันก็สมบูรณ์ สอนให้กับตัวเอง 1094 00:47:09,000 --> 00:47:12,208 และจะเอาฉันในขณะที่คิดออก ขอให้เพื่อนคำถามมากมายของ 1095 00:47:12,208 --> 00:47:14,080 แต่ความคิดที่มี อยู่ตรงเดียวกัน 1096 00:47:14,080 --> 00:47:18,050 เพราะสิ่งที่ได้รับการออกแบบ PHP จริงๆ หาไม่ได้สิ่งที่บรรทัดคำสั่ง 1097 00:47:18,050 --> 00:47:20,450 เราก็เล่นด้วย แต่สำหรับการเขียนโปรแกรมเว็บ 1098 00:47:20,450 --> 00:47:24,960 >> มันผูกติดอยู่จริงๆในลักษณะของ การตั้งค่าไปยังเว็บดังต่อไปนี้ 1099 00:47:24,960 --> 00:47:26,370 นี่คือ froshims 1100 00:47:26,370 --> 00:47:28,720 และถ้าผมต้องการที่จะ ลงทะเบียนในรูปแบบนี้ 1101 00:47:28,720 --> 00:47:30,930 นี้เป็นที่น่าเกลียดมาก แน่นอน แต่ให้ฉันไปข้างหน้า 1102 00:47:30,930 --> 00:47:34,440 และจะเป็นนักเรียนที่สะดวกสบายน้อยลง และสิ่งกีฬาแมตทิวส์ 1103 00:47:34,440 --> 00:47:35,630 คลิกสมัครสมาชิก 1104 00:47:35,630 --> 00:47:39,780 สิ่งที่ฉันต้องการที่จะสามารถที่จะทำคือ ส่งข้อมูลจากแบบฟอร์ม 1105 00:47:39,780 --> 00:47:42,400 ไม่เช่นเซิร์ฟเวอร์ของ Google ที่เราทำครั้งสุดท้ายที่สมบูรณ์ 1106 00:47:42,400 --> 00:47:47,100 โกงโดยใช้แบ็กเอนด์ของพวกเขาผม ต้องการที่จะใช้รหัสแบ็กเอนด์ของตัวเอง 1107 00:47:47,100 --> 00:47:51,410 ซึ่งหมายความว่าการเขียน PHP รหัสที่อาศัยอยู่ที่ URL ที่ 1108 00:47:51,410 --> 00:47:54,180 ว่าข้อมูลรูปแบบสามารถส่งไปยัง 1109 00:47:54,180 --> 00:47:57,510 >> และแล้วรหัสของคุณ เขียนใน PHP บนเซิร์ฟเวอร์ 1110 00:47:57,510 --> 00:47:59,400 จากนั้นสามารถตอบสนองต่อผู้ใช้ป้อนข้อมูลที่ 1111 00:47:59,400 --> 00:48:03,287 เช่นเดียวกับชื่อของเขาหรือเธอหรือระดับความสะดวกสบาย หรือหอพักและจากนั้นทำอะไรกับมัน 1112 00:48:03,287 --> 00:48:05,120 ในกรณีนี้ผมก็ โง่ที่พิมพ์ออกมา 1113 00:48:05,120 --> 00:48:06,750 เป็นข้อความที่ไม่ได้ทั้งหมดที่สวย 1114 00:48:06,750 --> 00:48:09,590 แต่คุณสามารถทำได้อย่างแน่นอน คิดถ้าคุณรู้ HTML, 1115 00:48:09,590 --> 00:48:13,010 และเร็ว ๆ นี้จะทราบวิธีการสร้าง HTML ที่มีฉพิมพ์และการพิมพ์ 1116 00:48:13,010 --> 00:48:16,500 และฟังก์ชั่นที่คล้ายกันคุณสามารถอย่างแน่นอน สร้างหน้าเว็บที่สวยที่บอกว่า 1117 00:48:16,500 --> 00:48:17,929 เฮ้เดวิดคุณลงทะเบียนตอนนี้ 1118 00:48:17,929 --> 00:48:20,220 คุณสะดวกสบายน้อย นักเรียนจากแมตทิวส์ใช่มั้ย? 1119 00:48:20,220 --> 00:48:23,880 >> คุณก็สามารถใช้ทั้งกลุ่มของ ses% หรือวงเล็บปีกกาและเครื่องหมายดอลลาร์ 1120 00:48:23,880 --> 00:48:27,750 สัญกรณ์ผมใช้ช่วงเวลาที่ผ่านมาเพื่อ สร้างข้อความที่เป็นมิตรต่อผู้ใช้ 1121 00:48:27,750 --> 00:48:28,567 กว่านี้ 1122 00:48:28,567 --> 00:48:30,150 ดังนั้นลองมาดูที่นี้ไฟล์หนึ่ง 1123 00:48:30,150 --> 00:48:34,666 Froshim ศูนย์จุด PHP มีลักษณะเช่นนี้ 1124 00:48:34,666 --> 00:48:37,860 1125 00:48:37,860 --> 00:48:43,500 เมื่อผมโหลด IDE CS50, froshim ศูนย์มีลักษณะเช่นนี้ 1126 00:48:43,500 --> 00:48:45,700 นี่คือจุด froshim PHP ศูนย์ 1127 00:48:45,700 --> 00:48:47,730 และสิ่งที่คุณแจ้งให้ทราบเกี่ยวกับแฟ้มนี้หรือไม่? 1128 00:48:47,730 --> 00:48:49,506 >> ผู้ชม: [ไม่ได้ยิน] 1129 00:48:49,506 --> 00:48:50,922 ลำโพง 1: ขออภัยเล็ก ๆ น้อย ๆ ดัง? 1130 00:48:50,922 --> 00:48:53,250 ผู้ชม: [ไม่ได้ยิน] มันคือทั้งหมดในรูปแบบ HTML 1131 00:48:53,250 --> 00:48:57,130 และในความเป็นจริงมันเป็นเพราะ สิ่งที่น่าสนใจเกี่ยวกับ PHP 1132 00:48:57,130 --> 00:48:58,880 คือว่ามันได้รับการออกแบบ ที่จะดีขึ้น 1133 00:48:58,880 --> 00:49:02,110 หรือแย่ลงผสม ด้วยรหัส HTML 1134 00:49:02,110 --> 00:49:05,850 และในความเป็นจริงแม้ว่านี้ ไฟล์ PHP froshim จุดศูนย์ 1135 00:49:05,850 --> 00:49:11,470 มีความคิดเห็น PHP ที่ด้านบน ของมันทั้งหมดเพียง HTM​​L 1136 00:49:11,470 --> 00:49:17,655 แต่ตรงกันข้ามถ้าผมเปิดให้ของ พูดลงทะเบียนศูนย์จุด PHP ซึ่ง 1137 00:49:17,655 --> 00:49:19,550 เพียงแค่มีความคิดเห็นขนาดใหญ่ที่ด้านบน 1138 00:49:19,550 --> 00:49:26,500 นี้ก็มีลักษณะเกือบทั้งหมด เช่น HTML ยกเว้นอะไร? 1139 00:49:26,500 --> 00:49:29,350 สายสิ่งที่ 21 มีลักษณะแปลก ๆ 1140 00:49:29,350 --> 00:49:32,739 >> แต่สังเกตเห็นฉันเข้าสู่โหมด PHP มีวงเล็บเปิดเครื่องหมายคำถาม PHP 1141 00:49:32,739 --> 00:49:33,780 จากนั้นผมได้มีสิ่งบางอย่าง 1142 00:49:33,780 --> 00:49:36,724 และแล้วที่ท้ายบรรทัดว่า เกือบฉันมีเครื่องหมายคำถาม PHP 1143 00:49:36,724 --> 00:49:38,390 และนี่คือสิ่งที่ผมหมายถึงผสม 1144 00:49:38,390 --> 00:49:41,910 คุณสามารถเขียน HTML ที่คุณเพียงแค่ ต้องการเซิร์ฟเวอร์ที่จะคายออก 1145 00:49:41,910 --> 00:49:45,090 แต่ถ้าคุณต้องการที่จะทำอะไร ครึ่งแบบไดนามิกผ่านหน้า 1146 00:49:45,090 --> 00:49:47,699 เช่นใส่ชื่อของฉันหรือ หอพักหรือระดับความสะดวกสบาย 1147 00:49:47,699 --> 00:49:49,490 ฉันสามารถใช้ฟังก์ชั่น เช่นเดียวกับอาร์พิมพ์ซึ่งเป็น 1148 00:49:49,490 --> 00:49:52,492 พิมพ์ recursive ซึ่งก็หมายความว่า พิมพ์ตัวแปรนี้การจัดรูปแบบมัน 1149 00:49:52,492 --> 00:49:53,200 แต่คุณต้องการ. 1150 00:49:53,200 --> 00:49:55,880 มันจริงๆไม่ได้สำหรับ วัตถุประสงค์ของมนุษย์เป็นเพียง 1151 00:49:55,880 --> 00:49:58,290 เพื่อวัตถุประสงค์ในการแก้จุดบกพร่องหรือการวินิจฉัย 1152 00:49:58,290 --> 00:49:59,460 เพื่อให้เป็นวิธีที่ผมทำ 1153 00:49:59,460 --> 00:50:06,100 >> ถ้าผมไปแทน froshims สองจุด PHP, แจ้งให้ทราบว่าการดำเนินการในรูปแบบนี้ 1154 00:50:06,100 --> 00:50:09,680 ไม่ได้ลงทะเบียนจุด PHP เป็นศูนย์ old-- หนึ่งก่อนหน้านี้จริง 1155 00:50:09,680 --> 00:50:11,222 แต่จดทะเบียน PHP สองจุด 1156 00:50:11,222 --> 00:50:13,680 เพื่อให้ดูที่วิธีการนี​​้ ทำงานแตกต่างกันเล็กน้อย 1157 00:50:13,680 --> 00:50:15,140 ถ้าฉันไปเป็นรุ่นที่สอง 1158 00:50:15,140 --> 00:50:20,430 ถ้าที่นี่ถ้าผมลงทะเบียนเป็นเดวิดน้อย ความสะดวกสบายจากหอพักของแมทธิวส์ 1159 00:50:20,430 --> 00:50:21,480 การลงทะเบียน 1160 00:50:21,480 --> 00:50:23,770 ดังนั้นเวลานี้ก็กล่าวว่าคุณ มีการลงทะเบียนไม่ได้จริงๆ 1161 00:50:23,770 --> 00:50:25,370 ลองมาดูสิ่งที่ฉันได้ที่นี่ 1162 00:50:25,370 --> 00:50:29,760 หากฉันมองไปที่สองจุดลงทะเบียน PHP นี้มีโค้ด PHP มากขึ้น 1163 00:50:29,760 --> 00:50:35,410 มันเป็นเรื่องเล็ก ๆ น้อย ๆ ทำความสะอาดแม้ว่ามันจะ ยังคงตัดยาวน้อยในสายนี้ 1164 00:50:35,410 --> 00:50:36,260 ขอให้สังเกตที่นี่ 1165 00:50:36,260 --> 00:50:40,300 ผมพิมพ์ออกมาแท็กของฉันแท็กหัวของฉัน แท็กชื่อของฉันหัวร่างกาย 1166 00:50:40,300 --> 00:50:45,410 >> และจากนั้นผมเริ่มที่จะพูด สิ่งที่ต้องการเข้าสู่โหมด PHP 1167 00:50:45,410 --> 00:50:48,540 และเพื่อให้แท็กที่วงเล็บเปิด เครื่องหมายคำถาม PHP-- PHP กล่าวว่า 1168 00:50:48,540 --> 00:50:53,460 เดี๋ยวก่อนเซิร์ฟเวอร์ execute-- ตีความ สิ่งต่อไปนี้เป็น PHP 1169 00:50:53,460 --> 00:50:55,030 จนกว่าคุณจะเห็นแท็กสิ้นสุด 1170 00:50:55,030 --> 00:50:58,590 และแม้ว่าคุณอาจจะไม่ทราบ PHP อื่น ๆ กว่าที่คุณเคยเห็นป่านนี้ 1171 00:50:58,590 --> 00:51:01,290 คุณสามารถชนิดของการอ่าน มันสวยอย่างสังหรณ์ใจ 1172 00:51:01,290 --> 00:51:10,670 ถ้าชื่อเป็นที่ว่างเปล่าหรือความสะดวกสบาย ว่างเปล่าหรือหอพักว่างเปล่าฉันจะทำอย่างไร? 1173 00:51:10,670 --> 00:51:12,830 ฉันจะพูดอะไรให้กับผู้ใช้หรือไม่ 1174 00:51:12,830 --> 00:51:15,330 คุณจะต้องให้ชื่อของคุณ ความสะดวกสบายและหอพักและอื่น ๆ 1175 00:51:15,330 --> 00:51:17,750 อื่นผมบอกว่าคุณเป็น ลงทะเบียนกันไม่ได้จริงๆ 1176 00:51:17,750 --> 00:51:19,190 >> และที่ผมพูดไม่ได้จริงๆ เพราะมีฐานข้อมูล 1177 00:51:19,190 --> 00:51:20,200 ฉันไม่ได้ทำอะไรกับข้อมูลที่ 1178 00:51:20,200 --> 00:51:22,408 ฉันแค่ทิ้งมันไป สำหรับวัตถุประสงค์ในการสาธิต 1179 00:51:22,408 --> 00:51:24,320 ตอนนี้ผมชนิดของ skimped เหนือเส้น 22 1180 00:51:24,320 --> 00:51:26,400 มีไวยากรณ์มากขึ้น มี แต่เครื่องหมายดอลลาร์ 1181 00:51:26,400 --> 00:51:28,320 โพสต์ขีดเป็นชนิดที่น่าสนใจ 1182 00:51:28,320 --> 00:51:30,300 และนี่คือสิ่งที่ดีเกี่ยวกับ PHP 1183 00:51:30,300 --> 00:51:35,610 ใน PHP, คุณมีสิ่งที่เรียกว่า ไม่กี่ซุปเปอร์ตัวแปรทั่วโลก 1184 00:51:35,610 --> 00:51:38,430 พวกเขามีการจัดเรียงของมากยิ่งขึ้น ที่สำคัญกว่าตัวแปรทั่วโลก 1185 00:51:38,430 --> 00:51:41,370 และสิ่งเหล่านี้ทั้งหมดทุน เป็นเช่นนี้มาพร้อมกับ PHP 1186 00:51:41,370 --> 00:51:44,550 ดังนั้นถ้าคุณมีเซิร์ฟเวอร์ที่มี เว็บเซิร์ฟเวอร์ที่ติดตั้งเช่น Apache, 1187 00:51:44,550 --> 00:51:49,390 และที่คุณติดตั้งภาษา การสนับสนุนสำหรับ PHP ทั้งหมดในทันทีที่คุณ 1188 00:51:49,390 --> 00:51:52,250 สามารถเริ่มใช้ซุปเปอร์เหล่านี้ ตัวแปรทั่วโลกในรหัสของคุณ 1189 00:51:52,250 --> 00:51:54,330 >> และสิ่งที่ดีเกี่ยวกับ PHP คือว่าถ้าคุณเพียง 1190 00:51:54,330 --> 00:51:57,540 เขียนไฟล์ที่สิ้นสุดในจุด PHP, วางไว้บนเว็บเซิร์ฟเวอร์ 1191 00:51:57,540 --> 00:52:01,260 แล้วคุณจะส่งแบบฟอร์มไป ผ่านการกระทำที่แท็กและแท็กแบบฟอร์ม 1192 00:52:01,260 --> 00:52:05,110 ที่แอตทริบิวต์การดำเนินการใน แท็กรูปแบบ PHP และเว็บ 1193 00:52:05,110 --> 00:52:09,360 ตัวเลขออกมาอย่างสมบูรณ์วิธีการที่จะคว้า ทุกคู่ค่าที่สำคัญเหล่านั้นออก 1194 00:52:09,360 --> 00:52:11,633 ของ URL เช่นคำถาม เครื่องหมายคิวเท่ากับแมว 1195 00:52:11,633 --> 00:52:14,782 ก็จะคิดออกว่าจะคิวและแมว 1196 00:52:14,782 --> 00:52:17,710 หากคุณส่งรูปหรือชื่อผู้ใช้ หรือรหัสผ่านที่จะชอบ Facebook, 1197 00:52:17,710 --> 00:52:21,360 PHP จะคิดออกมาให้คุณ ซึ่งข้อมูลทั้งหมดที่มีอยู่ 1198 00:52:21,360 --> 00:52:23,821 และมันก็จะมอบ คุณอาเรย์ 1199 00:52:23,821 --> 00:52:27,560 เรียกว่าเงินดอลลาร์เข้าสู่ระบบโพสต์ขีด หรือเครื่องหมายดอลลาร์ขีดได้รับ 1200 00:52:27,560 --> 00:52:30,590 ขึ้นอยู่กับว่าคุณอยู่ ใช้รับหรือส่งโพสต์ 1201 00:52:30,590 --> 00:52:32,950 และมันก็จะมอบให้คุณ ตัวแปรทั่วโลกสุด 1202 00:52:32,950 --> 00:52:37,254 เพื่อที่ว่าถ้าคุณต้องการที่จะได้รับชื่อ ว่าผู้ใช้ส่งผ่านทางเว็บที่ 1203 00:52:37,254 --> 00:52:41,894 รูปแบบคุณอย่างแท้จริงเพียงแค่พูดชื่อ ของซุปเปอร์ตัวแปรทั่วโลกที่อ้าง 1204 00:52:41,894 --> 00:52:43,380 ได้นำมาอ้างชื่อ 1205 00:52:43,380 --> 00:52:46,144 และอ้างความสะดวกสบายได้นำมาอ้าง, และอ้างหอพักได้นำมาอ้าง 1206 00:52:46,144 --> 00:52:48,810 และเรากำลังจะได้สามารถที่จะทำ นี้และอื่น ๆ อีกมากมายด้วย PHP 1207 00:52:48,810 --> 00:52:50,540 และแม้ว่านี้คือ ได้อย่างรวดเร็วลมกรดที่มัน 1208 00:52:50,540 --> 00:52:51,980 เราจะดำน้ำในสัปดาห์ถัดไปมากขึ้น 1209 00:52:51,980 --> 00:52:54,247 เราจะแนะนำฐานข้อมูล เพื่อให้คุณจริง 1210 00:52:54,247 --> 00:52:56,816 จะเริ่มดำเนินการ based-- E-ค้าของคุณเอง 1211 00:52:56,816 --> 00:52:59,150 เช่นเว็บไซต์ในเวลาเพียงหนึ่งสัปดาห์ของ 1212 00:52:59,150 --> 00:53:02,750 ดังนั้นเราจะเห็นคุณในครั้งต่อไปและ หวังว่าคุณจะได้รับข้อความ 1213 00:53:02,750 --> 00:53:05,450 บาย. 1214 00:53:05,450 --> 00:53:06,950 >> [เล่นเพลง] 1215 00:53:06,950 --> 00:53:11,450 1216 00:53:11,450 --> 00:53:12,950 >> [เปิดประตู] 1217 00:53:12,950 --> 00:53:14,475 >> ลำโพง 2: เฮ้ 1218 00:53:14,475 --> 00:53:15,350 ลำโพงที่ 3: เกิดอะไรขึ้น? 1219 00:53:15,350 --> 00:53:17,750 ลำโพง 2: สิ่งที่คุณกำลังทำอะไร? 1220 00:53:17,750 --> 00:53:19,850 ลำโพง 3: การทำงานกับชุดปัญหา 1221 00:53:19,850 --> 00:53:21,050 ลำโพง 2: นีซ 1222 00:53:21,050 --> 00:53:22,550 แปะมือ. 1223 00:53:22,550 --> 00:53:23,150 >> [แปะมือ] 1224 00:53:23,150 --> 00:53:25,584 >> อะไร are-- เอ่อสิ่งที่คุณจะทำอะไรที่นี่? 1225 00:53:25,584 --> 00:53:26,750 ลำโพงที่ 3: เพียงห้อยออก 1226 00:53:26,750 --> 00:53:28,134 เพิ่งกลับมาจากโรงยิม 1227 00:53:28,134 --> 00:53:30,050 ฉันไม่สามารถช่วย แต่ แจ้งให้ทราบเมื่อเราสูง fived, 1228 00:53:30,050 --> 00:53:32,450 ที่คุณมีมือที่หยาบกร้านสวย 1229 00:53:32,450 --> 00:53:33,950 คุณไปที่โรงยิม? 1230 00:53:33,950 --> 00:53:35,150 >> ลำโพง 2: เลขที่ 1231 00:53:35,150 --> 00:53:36,650 เลขที่ 1232 00:53:36,650 --> 00:53:38,450 >> ลำโพงที่ 3: ชายคุณดูสวยขนาดใหญ่ 1233 00:53:38,450 --> 00:53:45,950 ซึ่งเป็นที่ไม่ดีเพราะทุกคนรู้ 8 ลูกเป็นชายร่างใหญ่ในมหาวิทยาลัย 1234 00:53:45,950 --> 00:53:48,050 แปะมือ. 1235 00:53:48,050 --> 00:53:49,550 >> ลำโพง 2: เอ่อไม่มี 1236 00:53:49,550 --> 00:53:50,450 ไม่ฉันคิดว่าฉันดี 1237 00:53:50,450 --> 00:53:52,300 ฉันคิดว่าฉันดี 1238 00:53:52,300 --> 00:53:54,097