>> [عزف الموسيقى]
>> رئيس 1: هذا هو CS50 و هذا هو نهاية الأسبوع السبعة.
اليوم هو ربما أين نحن تعليم كنت حقا اللغات.
قدمنا ​​في القليلة الماضية أسابيع HTML و CSS، أي من الذي
يتم غات البرمجة.
وبالفعل، على الرغم من أننا لم ننظر إلى ما يقرب من جميع العلامات
أن HTML يأتي مع وما يقرب من جميع من الخصائص التي تأتي مع CSS،
هذا هو نوع من ذلك لHTML و CSS.
وسوف نقوم فقط عموما بدء افتراض أن ل
فهم الأفكار العامة من العلامات والسمات،
والصفحات التي يتم إرسالها من العميل إلى الملقم.
>> لأن اليوم نبدأ في النظر في لغة أخرى البرمجة، PHP.
ونحن في طريقنا للقيام بذلك بسرعة فائقة.
نحن لن يعلمك PHP في حد ذاته، يشبه إلى حد كبير لم نكن نطمح ليعلمك
C، في حد ذاته، وإنما البرمجة.
والواقع، واحدة من أهداف لهذه الدورة
لا ليعلمك C، أو HTML، CSS أو، أو PHP،
أو أي عدد آخر العبارات الطنانة أو المختصرات،
ولكن بدلا من علم الحاسوب وكيفية البرنامج بشكل أساسي.
وبالفعل، اليوم نبدأ في اتخاذ تلك العجلات تدريب إيقاف جميع
مزيدا من الطيران من خلال لغة تسمى PHP، على النحو التالي.
>> هنا هو ما تبدو هذه اللغة مثل.
اتضح أن هناك حاجة ل وظيفة رئيسية في برنامج مكتوب
بلغة تسمى PHP.
بحيث يبدو بالفعل أبسط قليلا من C، والتي نعرفها.
اتضح أنه إذا كنت تريد تعريف متغير،
يمكنك أن تفعل ذلك بشكل مطابق تقريبا لC. ولكن هناك اختلاف واحد واضح هنا
عندما أعلن سلسلة، أو ربما اثنين الخلافات.
ما يبدو مختلفا؟
>> الحضور: علامة الدولار.
>> رئيس 1: نعم، هناك الدولار توقيع، وهو ما لم يسبق له مثيل من قبل.
وما هو مفقود؟
نعم؟
>> الحضور: (غير مسموع)
>> رئيس 1: نعم، وليس هناك نوع البيانات.
هكذا اتضح أن PHP هو ما نحن استدعاء لغة فضفاضة كتبته، حيث
يتم كتابتها بقوة C.
كتبته فضفاضة يعني فقط ان هناك أنواع مختلفة من البيانات،
هناك سلاسل، و[إينتس]، وعوامات.
لكن الأرقام كمبيوتر بها.
أنت مبرمج البشري لم يكن لديك لمعرفة ذلك.
لذلك كل ما عليك القيام به تعريف متغير هو
علامة الدولار، واسم الخاص بك متغير، وبعد ذلك، على سبيل المثال،
الإقتباس، مرحبا العالم.
>> حسنا هذا هو ما حالة تبدو في PHP.
أي اختلافات؟
لا.
لذلك تبين هذه متطابقة.
وكنت قد يكون أقل فروع أو أكثر من فروع،
ولكن يتحول في بناء الجملة بالضبط نفس الشيء.
التعبيرات المنطقية يمكن أن يؤمر معا.
التعبيرات المنطقية يمكن anded معا.
لا يزال لديك مفاتيح.
حتى لو كنت لم تستخدم هذه، وهذه موجودة في C
وانهم وظيفيا أي ما يعادل في PHP.
>> في واقع الأمر، في PHP انهم أكثر من ذلك بقليل قوية.
في C، يمكنك مقارنة معينين فقط أنواع البيانات مثل [إينتس] وحرف،
في حين أنه في PHP يمكنك مقارنة الواقع سلاسل ريش كامل دون الحاجة
ما يدعو للقلق حول مؤشرات وما شابه ذلك.
حتى هنا لحلقة.
هذا هو شبة الكود عادل الرمز، اذا صح التعبير.
ولكن من الناحية الهيكلية انها مطابقة لC.
>> وفيما يلي حلقة في حين، شبة الكود therefore-- مطابقة لC.
وهنا افعل حين loop-- متطابقة.
وحتى لا يكون هناك نوع من هذا النمط هنا حيث
هناك عدد قليل من الآخرين نحوي ميزات ونحن في الواقع سوف نرى.
في الواقع، وهنا لطيفة الطريقة PHP بموجبه،
إذا كنت ترغب في تكرار أكثر من مجموعة، ولك
لا أريد أن القفز من خلال الأطواق العقلية والنحوية وجود
الباحث ط يساوي 0، ط أقل من ن، ط بالإضافة إلى plus-- التي
هو مجرد الكثير من تركيب مزعج.
يمكنك أن تقول أكثر من ذلك بقليل سائلا عن كل الأرقام
كرقم، حيث في هذه الحالة أرقام علامة الدولار، أفترض،
مثل مجموعة تسمى الأرقام.
ثم أفترض العدد، المفرد، سيكون متغير.
>> وماذا سوف تفعل PHP بالنسبة لي وأنا تكرار خلال هذه الحلقة هو، على كل التكرار،
انها تسير تحديث رقم متغير ل أن يكون العنصر إيث في الأرقام، والجمع.
لذلك يعالج فقط كل ذلك بالنسبة لي.
لا قوسين معقوفين، لا علامة الدولار، ولا منقوطة.
انها مجرد أبسط قليلا.
حسنا، إذا كنت ترغب في مجموعة، اتضح لك
تستطيع أن تفعل شيئا مشابها جدا ل C. بناء الجملة يختلف قليلا.
ولكن هنا هو مجموعة تسمى وقع الدولار الأرقام.
وأنا استخدم، في PHP، مربع بين قوسين، اتضح.
ونحن في طريقنا لرؤية هذه مرة أخرى في JavaScript-- بعد لغة أخرى.
أنا فقط استخدام التدوين قوس مربع لدينا قائمة مفصولة بفواصل
من الأعداد الصحيحة، في هذه الحالة.
ولكن هذا يعطيني صفيف.
>> ولكن حتى أكثر قوة في PHP، لدينا أيضا ما هي عموما
دعا صفائف النقابي.
والكثير من اللغات لديك هذه كذلك.
الشيء حول صفائف C غير أن المؤشرات
لمجموعة، الشيء الذي كنت استخدام في الأقواس المربعة التي عبر
يمكنك الوصول إلى العناصر، يجب أن يكون ماذا؟
>> الحضور: (غير مسموع)
>> رئيس 1: يجب عليهم أن يكونوا أرقام أو الأعداد الصحيحة، وتحديدا من الصفر على ما يصل.
حسنا، في PHP، و، فإنه يتحول من، في لغات أخرى،
يمكنك البدء ل الفهارس التي ليست رقمية.
ولكنها في الواقع عبارة أو العبارات، بحيث بدلا من
حاول أن تتذكر أين شيء و، أو تخزينها في متغير ط،
يمكنك فعلا استخدام الكلمة والقول هكذا- يضرب يمكنك أن تقول كلمة واحدة من هذا القبيل.
>> حتى علامة الدولار الاقتباس هو اسم متغير هنا.
هذا هو تركيب غير تقليدي إلى حد ما هذا الربط بين اثنين من قيمة المفتاح
أزواج لهذا المتغير.
على وجه التحديد، وهذا هو إعطائي صفيف هو طول 2.
لكن المؤشرات ليست 0 و 1.
المؤشرات هي الإقتباس الرمز وعرض أسعار نهاية الاقتباس.
وقيم تلك المؤشرات، على التوالي، هو FB عن الفيسبوك
و79،53 $، وعندما تستمر فحص ثمنا لهذا.
>> ماذا يعني ذلك؟
كذلك، فهذا يعني أن بدلا من كتابة التعليمات البرمجية
مثل هذا، حيث اعتدت أن تفعل شيئا مثل sign-- الدولار أو بالأحرى، في C
أنا لن حتى يكون علامة الدولار.
وأود أن تفعل شيئا كما نقلت وثم
وأود أن تفعل قوس لي للحصول على بعض تعسفا فهرستها عدديا قيمة.
ابتداء من اليوم في PHP، إذا كنت ترغب في الحصول على بعض القيمة،
نحن نوع من لديها أكثر التعبير الدلالي.
مجرد طريقة أخرى للقول ما في وسعنا فقط نسمي الأشياء ما هي عليه.
>> وإذا كنت ترغب في الحصول على في رمز شيء،
الآن يمكنك القيام حرفيا أقتبس رمز نهاية الاقتباس
بين قوسين معقوفين بدلا من مجرد رقم.
لذلك هو راحة لطيفة.
وهذا النوع من ذلك الآن.
هناك باقات من ميزات أخرى في PHP.
وبالفعل، PHP يأتي مع بالوعة المطبخ المثل.
عشرات، مئات من الوظائف تأتي مع PHP-- الكثير أكثر من جاء مع C.
>> وهذا ما لا يقصد به تطغى بل مساعدة
كنت أدرك أننا لم يعد لديك لكتابة التعليمات البرمجية
هذا النوع من هنا إلى أسفل حيث المفهوم.
الآن يمكننا أن نبدأ الاستفادة أكثر بكثير من الميزات المتقدمة
أن لغات مثل PHP لها.
لذلك نحن لم يكن لديك ما يدعو للقلق تتحرك الأمور في الذاكرة.
ليس لدينا ما يدعو للقلق malloc وجميع هذه أقل مستوى،
تفاصيل القوية التي سوف يتصارع مع ذلك، إذا لم يكن الصراع مع، pset5،
ولكن يمكنك أن تبدأ في قريبا أمرا مفروغا منه.
>> في الواقع، دعنا نكتب عظمى برنامج بسيط في PHP، على النحو التالي.
انا ذاهب للذهاب الرأس إلى CS50 IDE هنا، وما انا ذاهب الى القيام به
هو إنشاء ملف جديد، وهذا ببساطة جدا سوف يتم استدعاؤها مرحبا نقطة PHP.
وذلك بدلا من نقطة ج، انها الذهاب ليتم استدعاؤها نقطة PHP.
ثم في هذا الملف، يمكنني البدء في الكتابة.
ولكن اتضح أن شيء واحد يجب أن أعرف
غير أن أي ملف PHP بشكل عام، يحتاج لنبدأ مع بعض تركيب خاص.
تشبه في الروح إلى HTML، ولكن مرة أخرى، PHP هي لغة برمجة، وليس
لغة الترميز.
>> وذلك في كل ملف، وانها نوع أبحث من الغباء أنا أعترف.
فتح قوس، علامة استفهام، PHP.
وهذا مجرد طريقة لغة في القول،
مهلا، الكمبيوتر هنا يأتي بعض التعليمات البرمجية مكتوب بلغة دعا PHP.
ثم في النهاية من الملف الخاص بك، لديك نوع من الفرز من العكس.
أنت لا تكتب PHP مرة أخرى، أنت فقط به علامة استفهام، قوس الزاوية.
وبعد ذلك أي شيء كنت وضعت داخل من هذه العلامات اثنين، إذا جاز التعبير،
سوف تكون، أو ينبغي أن يكون، رمز PHP.
>> لذلك دعونا نفعل شيئا السوبر بسيط.
انا ذاهب الى المضي قدما ونفعل الطباعة صفر، مرحبا العالم، مائل ن، حفظ.
والآن في بلدي موجه، وانا ذاهب ل القيام، وجعل hello-- لا، انا ذاهب الى القيام به،
نقطة خفض مرحبا.
لا، مائل نقطة، HM.
ذلك شيء مختلف.
والواقع، وهذا هو الاختلاف الرئيسي بين PHP و لغات مثل C C.
وكان ما يسمى اللغة المترجمة.
ماذا يعني ذلك بالنسبة للC التي سيتم تجميعها؟
ما كان المعنى الضمني؟
نعم.
>> الحضور: كتب ذلك إلى رمز الجهاز بحيث يمكن تشغيله بواسطة الكمبيوتر.
>> رئيس 1: بالضبط.
لدينا لتحويله لأول مرة في يسمى رمز الجهاز، الأصفار ومنها،
قبل ان تكون فعلا قابل للتنفيذ ويفهمها الكمبيوتر.
شركة إنتل في الداخل.
من قبل وحدة المعالجة المركزية داخل الكمبيوتر.
PHP، على النقيض من ذلك، هو ما يسمى لغة مفسرة، التي
يعني أنك لا ترجمة عليه في الآحاد والأصفار و، رمز الجهاز،
يمكنك بدلا من ذلك ترك الأمر كما شفرة المصدر.
ويمكنك بدلا من ذلك تمر عليه كمدخل لبرنامج، مترجم
أن كتب شخص آخر منذ سنوات أن يفهم ذلك
سطرا سطرا، حرف حرف.
لذلك وبعبارة أخرى، كتب البشر هناك
البرنامج الذي سوف ننظر في سطر التعليمات البرمجية الخاصة بك عن طريق الخط،
ومعرفة ما الكمبيوتر يجب القيام به،
دون تحويله مباشرة إلى أصفار ومنها.
>> حتى إذا كان يرى للحلقة، هذا ما يسمى مترجم
سيكون مثل، كل الحق، ينبغي لي نفعل شيئا مرارا وتكرارا وتكرارا.
ماذا علي أن أفعل؟
اسمحوا لي أن ننظر في السطر التالي.
ويفسر ذلك حقا سطرا سطرا.
وذلك لتنفيذ ذلك، وأنا لا تستخدم جعل.
أنا لا أستعمل نقطة مائل في هذه الحالة.
I بدلا من ذلك القيام PHP، وهو اسم البرنامج، الملقب
مترجم، وهذا مثبتة مسبقا في CS50 IDE،
والان انا بحاجة لتمرير وسيطة سطر الأوامر، التي
هو بكل بساطة اسم الملف الذي أريد أن تفسير.
أو أكثر عرضا، والتي أريد لتشغيل.
وإذا كنت هاهنا، يوجد لدينا ذلك.
مرحبا بالعالم.
الآن اتضح أنني تستخدم مواطنه الطباعة عمدا
لسد لنا من C إلى PHP.
معظم المبرمجين PHP، كما سترى، حتى لا يكلف نفسه عناء باستخدام مواطنه الطباعة.
أنها مجرد استخدام وظيفة تسمى الطباعة، التي C لم يكن لديك.
وحتى لو كنت أعد الآن، فإنه في الواقع يتصرف وظيفيا نفسه.
لا يمكنني استخدام الصورة في المئة وأنا في المئة وهكذا دواليك،
ولكن هناك طرق أخرى في PHP لفعل ذلك.
ولكن هذا هو فقط ل القول بأن نحويا،
بخلاف بعض أشياء غريبة حتى أعلى، وبعض الشخصيات غريبة أسفل
في الجزء السفلي، والمفاهيم الآن من البرمجة في هذه اللغات الأخرى
وسيكون بالضبط نفس الشيء.
>> في الواقع، دعونا نفعل سبيل المثال الآخر.
لذلك أنا ذاهب إلى المضي قدما وإغلاق هذا الملف.
اسمحوا لي أن إنشاء واحد آخر سأتصل الشروط 1 نقطة PHP.
لذلك لا الصفر، لأن ما فعلته ونظرت إلى الوراء قبل بضعة أسابيع،
كان لدينا ملف يسمى الشروط 1 نقطة C. وماذا
لم تم تحويله في بلدي الرأس، وهنا على الورق،
وقريبا على ملعب ل الموقع، سطرا سطرا في PHP.
>> حتى في النسخة C، فعلنا شيئا مثل سلسلة ق يحصل على السلسلة.
لذلك هو مختلفة قليلا للقيام بذلك في PHP.
بدلا من ذلك، انا فقط القيام به، أو بالأحرى، I
قد فعلت الباحث ن يحصل على الباحث، في هذا المثال في وقت سابق.
وذلك بدلا من ذلك، أنا ذاهب للقيام ن يحصل قراءة الخط، أود صحيح،
من فضلك.
لذلك هذا هو مجرد بلدي موجه.
وهكذا اتضح، و أود أن أعرف هذا فقط
من بعد قراءة أو ينظر إلى وظيفة من قبل، قراءة خطوط وظيفة في PHP
يأخذ حجة وهذا هو موجه للإنسان، والغرض منه في الحياة
هو قراءة سطر من النص انه أو انها أنواع في.
وبعد ذلك يقوم بتخزين هذا النص في ن متغير.
>> وأنا الآن قد تريد أن تفعل شيئا كما فعلت قبل أسابيع، في الأسبوع مثل
واحد من الطبقة.
إذا كان n أكبر من صفر، ثم، وانا ذاهب
لاقتراض ذلك التركيب رأينا للتو، مواطنه الطباعة، اخترت رقما موجبا،
ن مائل.
آخر إذا كان n يساوي يساوي الصفر، وأنا الذهاب الى المضي قدما ويقول مواطنه الطباعة،
اخترت الصفر مائل ن.
آخر، وهنا يجب أن حالة يكون بطبيعة الحال، مواطنه الطباعة،
اخترت رقما سالبا.
>> ويمكننا تنفيذ بالتأكيد منطق هذا الشيء
في حفنة من مختلف طرق، ولكن النقطة هنا
غير أن نحويا، بالكاد أي شيء جديد.
انها مجرد علامة الدولار و وظيفة جديدة وخط القراءة.
لكن في الأساس، ما هو الجديد الآن أنا تفسير ذلك.
أنا فمررها كمدخل إلى برنامج آخر.
حتى لو كنت تريد تشغيل هذا، إذا أنا لم نرتكب أي أخطاء،
انا ذاهب لتشغيل PHP، ل الشروط 1 نقطة PHP، أدخل،
انا ذاهب الى كتابة في عدد 50، ودعونا نفترض الآن يعمل.
لأن المنطق هو نفس الاشياء كما أسبوع واحد.
>> كل الحق، لذلك هذا هو جميلة مخيب، أليس كذلك؟
أننا يمكن أن نفعل ذلك في أي عدد من اللغات.
دعونا نفعل شيئا بطريقة أكثر قوة.
دعونا الانتهاء من مشكلة تعيين خمسة.
لذلك أنا ذاهب إلى المضي قدما ونفعل ذلك.
انا ذاهب لإنشاء ملف دعا القاموس نقطة PHP،
ويميل كما قد يكون ليتبارى أسفل الكثير من الملاحظات،
سوف تلاحظ أن تساعد فقط لك إذا كنت يسمح
لتنفيذ مشاكل مجموعة خمسة في PHP.
ولكن سنرى كيف بسرعة ونحن الآن ويمكن تنفيذ ذلك نفس مجموعة المشكلة.
>> حتى في القاموس نقطة PHP، وانا ذاهب لنفترض أن هناك بالفعل
ملف في العالم يسمى مدقق الإملاء.
وبالفعل، فعلت ذلك مسبقا، ونحن لن المشي من خلال هذا الخط
سطرا، ولكن إذا كنت الغريب تريد في وقت لاحق وحقا
التفاف عقلك حول الاختلافات بين C و PHP،
حرفيا مقارنة هذا الملف، مدقق الإملاء، من شفرة المصدر اليوم
أننا سوف الرد في وقت لاحق اليوم، ضد ص مجموعة
خمسة مدقق الإملاء نقطة ج التي نقدمها لكم، وانها تقريبا نفس سطرا سطرا.
هناك بعض العلامات المزيد من الدولار.
وظائف الزوجين هي مختلفة قليلا.
ولكنها طريقة لطيفة من نوع لرؤية كيف
يمكنك ترجمة لغة إلى أخرى.
وانها خط مطابق تقريبا للخط.
ولكن أنا ذاهب لنفترض أن هذا موجود، وما أنا ذاهب الى القيام به هنا
هو محاولة لتفجير بك تمانع من قبل reimplementing
مجمل المشكلة تعيين خماسية أسرع مما كنت قد تم القيام حتى الآن.
هكذا على سبيل المثال، وانا ذاهب لأول أعلن متغير عمومي يسمى الحجم،
وضعه تساوي الصفر.
الآن هذا ليس وفورات كبيرة.
خلاف أنت تنفذ حجم حد كبير نفس،
أو تلميح تلميح، فإن هذه الليلة أو غدا، فقط باستخدام متغير عمومي يسمى
حجم، ووضع ذلك تساوي الصفر.
هذا ليس بشكل خاص المفسد مذهلة.
>> فما كانت البيانات الخاصة بك هياكل الاختيار، أولئك منكم الذين سقط ارضا في
وقراءة المواصفات، وهياكل البيانات ما ومعظمكم قد تستخدم؟
جدول تجزئة أو محاولة، ربما بعض المتغيرات منها.
حتى تنفيذ جدول تجزئة على الأقل، هو نوع من الكثير من خطوط للقانون،
الصحيح؟
وليس كل واحد منهم قد يكون وظيفية في هذه المرحلة في الأسبوع،
ولكن هذا شيء طيب.
لأنه في PHP، إذا أنا تريد جدول تجزئة، وفعلت.
الصحيح؟
بحيث المتغير الذي لدي أعلن للتو من الواضح
دعا جدول علامة الدولار، في مقدمة من قبل.
>> ولكن أريد حقا فقط، في في نهاية اليوم، صفيف.
ولكنها ليست مفهرسة عدديا مجموعة، لأن هذا هو مثل أسبوعين
الاشياء، وعندما تحدثنا عن المصفوفات.
أريد جدول تجزئة.
لكن جدول تجزئة هو حقا مجرد وسيلة ملموسة للقول،
كنت ترغب في مجموعة النقابي.
كنت تريد أن تكون قادرة على مفاتيح المنتسبين مع القيم.
مفاتيح مع القيم.
ما هو قاموس، حقا؟
حسنا انها مجموعة كاملة من مفاتيح.
كلمات مثل التفاح، والكمثرى، والموز، وجميع هذه الكلمات الإنجليزية
أننا تسليم لك.
>> والقيم التي كنت على نحو فعال إدخالها في قاموسك
اما ان تكون حقيقية، أو غياب، كاذبة.
وبعبارة أخرى أنت إدراج مجموعة كاملة من أزواج قيمة المفتاح،
التفاح، صحيح، والكمثرى، صحيح، الموز، صحيح.
بحيث عند استرداد أو البحث حتى أن البيانات في جدول التجزئة الخاصة بك
مع وظيفة الشيك، كنت إما الحصول على العودة جوابا،
نعم، لقد وجدت في مجمع بلدي تجزئة الجدول، أو لا، انها ليست هناك،
لذلك يمكنك العودة كاذبة.
>> حتى للقيام بذلك، كل ما تحتاجه هو البيانات هيكل وكأنني اقترح من قبل.
أنا فقط بحاجة إلى أن تكون قادرة ربط الكلمات
مثل، الإقتباس، رمز، مع قيمة مثل الحقيقية.
ولذلك لا يوجد جدول تجزئة بلدي.
دعونا فعلا استخدامها.
لذلك هناك عدد قليل من الوظائف ولست بحاجة لتنفيذها.
انا ذاهب الى المضي قدما والعض إيقاف وظيفة تسمى الحجم.
فإنه يأخذ بدون وسائط.
أنا لا داعي للقلق مع كلمة، باطلة، في PHP.
أنا ببساطة سوف تعود الحجم.
>> وبوصفها جانبا، PHP لديها هذا التفصيل مزعج minorly،
حيث إذا كان هناك شيء العالمية، لديك ل أقول وظيفة التي كنت تستخدم
ذلك، مهلا، هذا هو المتغير العالمي.
لذلك، غباء طفيفة، ولكنك يجب أن نفعل ذلك على الرغم من ذلك.
>> ولكن ماذا عن الحمل؟
انا ذاهب الى تنفيذ تحميل وظيفة تسمى
أن يأخذ في اسم القاموس، مثلما هو الحال في مشكلة تعيين خمسة.
وقبل أن أشرع، لاحظ أنني لم
تم كتابة نفس الأشياء تماما.
ما هو مختلف الواضح في PHP حول كيف تقوم بتعريف وظيفة مقابل C؟
نعم.
الحضور: (غير مسموع)
رئيس 1: لا نوع الإرجاع.
وبالفعل، كان هذا هو الحال، PHP طالما انها كتبته فضفاضة،
هو أيضا قذرة قليلا في هذا الاتجاه.
لم تقم بتحديد كما مبرمج ما ترجع هذه الوظيفة.
سيكون لديك للنظر في الواقع في رمز إلى هذا الرقم.
أو قراءة التعليقات أو وثائق.
لذلك إيجابيات وسلبيات هذا النوع من القرارات.
لكنني يجب أن أقول الكلمة المفتاح، وظيفة.
وعندما نتعلم جافا سكريبت في غضون أسبوعين
ونحن في طريقنا لرؤية الشيء نفسه مرة أخرى، لكنه نفس الفكرة.
اسم الوظيفة، حجتها أو حجج أو عدم وجودها، والآن
هنا هو التنفيذ.
>> لذلك أنا ذاهب إلى قطع بعض زوايا فقط أن تكون مثيرة لمجرد لحظة.
ولكن انا ذاهب الى المضي قدما وأقول هذا.
هذه هي الطريقة التي يمكنني تحميل ملف في صفيف.
هناك وظيفة في PHP يسمى الملف.
كنت تسليمه اسم الملف.
انها يد لك مرة أخرى صفيف، داخل الذي هو كل سطر من الملف.
من الصفر، واحد، على ما يصل إلى ن ناقص 1 خطوط.
هذا كل شيء، أليس كذلك؟
ليس هناك و القراءة.
ليس هناك و الحصول على الصورة.
ليس هناك في المئة الصورة.
ليس هناك الصداع.
ليس هناك feof.
كل تلك الأشياء التي كنت قد المصارعة ربما،
مع ع تعيين أربعة وخمسة، ويذهب بعيدا.
>> لذلك أنا مجرد قراءة تلك الخطوط إلى الملف، ثم تعرف لماذا؟
إذا كنت ترغب في تكرار عبر هذه الكلمات، يمكنني القيام به، لكل الخطوط كخط.
تذكر أن هذا هو نوع من ذكي طريقة بالتكرار عبر صفيف، مؤشر
بحسب المؤشر، وعلى كل المكالمات التكرار السطر الحالي، خط علامة الدولار.
وهنا انا ذاهب للذهاب و أقول الجدول، قوس، خط، يحصل صحيح.
>> وبعبارة أخرى، هذه هي الطريقة I تضاف الى مائدتي التجزئة في PHP.
أقول الجدول علامة الدولار، الذي هو بلدي مجموعة النقابي الذي كان
فارغة في السطر من التعليمات البرمجية حتى أعلاه.
وبعد ذلك مؤشر إلى أنه لا، وذلك باستخدام عدد،
ولكن حرفيا باستخدام الكلمة التي يهمني.
ربما حان التفاح أو الكمثرى أو الموز أو أيا كان،
لكن على وجه التحديد أنا فهرسة إلى ذلك كما لو كنت اقترحت في وقت سابق.
وأغتنم اسم بلدي مجموعة النقابي، وبعد ذلك
استخدام الإقتباس في بين قوسين معقوفين مع سلسلة،
بدلا من العدد الفعلي.
>> وحتى هذا كل شيء.
ويتم تحميل وظيفة.
مرة واحدة أن تتكرر حلقة، لقد وضعت كل شيء في جدول التجزئة.
الآن تنويه صغير، وهناك بضعة أشياء أنا بحاجة إلى إصلاح.
والنسخة أنا ما بعد على الانترنت سيكون لديك كل من الفروق الدقيقة،
لكنها في الغالب مجرد الذهاب الى بعض التحقق من الخطأ وبتعديل بعض طفيفة.
ولكن هذا في الواقع جوهر ذلك.
إذا أريد الآن لتنفيذ وظيفة تسمى
تحقق، التي يتوقع كلمة كما حجتها،
كيف يمكن أن أذهب عن ذلك؟
حسنا، أنا ببساطة سأقول، إذا داخل مائدتي، في كلمة الموقع،
إذا تم تعيين.
حتى إذا كان هناك is-- في الواقع، أنت تعرف لماذا؟
انا ذاهب الى القيام بذلك في قليلا من شبة الكود.
ولكن الفكرة هي نفسها.
إذا كان هذا يساوي صحيح، العودة الحقيقية.
حسنا.
Else-- ترون نوع من حيث هذا going-- للعودة كاذبة.
فعله.
ويتم الاختيار.
>> لطيفة جدا، أليس كذلك؟
وماذا في ذلك هل هذا حقا الحصول على؟
وهذا أيضا، وقطع لي بعض الزوايا.
نظرة على نسخة على الانترنت لجميع الفروق طفيفة.
ولكن هذا هو جوهر ذلك.
مؤشر إلى حسابك مجموعة النقابي، الملقب
جدول تجزئة، معرفة ما إذا كان هناك قيمة هناك، إذا تم ضبطه على صحيح، وإذا كان الأمر كذلك،
العودة الحقيقية.
لذلك قمنا اختيارهم أسفل كل من التعقيد.
ذلك النوع من العقل تهب، أليس كذلك؟
أنا لن عناء الانتهاء من ذلك مع تفريغ، لأنه في fact-- أوه، أنت تعرف لماذا؟
نعم، دعونا نكملها مع تفريغ.
>> تفريغ في جدول تجزئة قد تبدو مثل وظيفة تفريغ، والعودة.
OK ذلك أن تفريغ.
أنه لا يوجد شيء لتفريغ، أليس كذلك؟
ليس هناك malloc.
أنا لم أطلب صراحة نظام التشغيل عن أي شيء.
أنا بدأت للتو باستخدام المتغيرات.
وحتى هذا أيضا مظهر من مظاهر ميزات لغات المستوى العالي.
ذلك مرة أخرى، فإن معظم هذا المصطلح لقد تم التعامل أسفل هنا
مع C. مستوى سوبر منخفضة.
تستطيع أن ترى ذاكرة الكمبيوتر.
يمكنك تلمس أي شيء لك نريد في RAM جهاز الكمبيوتر الخاص بك،
للأفضل أو للأسوأ.
>> هنا، نحن ذاهبون أن تتخلى عن تلك السلطة.
لكن يا إلهي، ننظر كيف أقل بكثير كود كتبت.
في الواقع إذا كنت لا أتحدث والتحدث عبر الكتابة لي،
كنا قد تم القيام به مع هذا المثال قبل خمس دقائق.
إذن ما هو السعر الذي يدفع؟
حسنا دعونا نلقي نظرة.
لنلقي نظرة.
انا ذاهب الى المضي قدما وتشغيل CS50.
اسمحوا لي أولا أن يذهب إلى أمثلة اليوم حيث
لدي الدليل النصوص كما كان من قبل.
انا ذاهب لتشغيل حل لأنه يأتي مع مشكلة تشكيل خمس يسمى
مدقق الإملاء، والتي هي في حساب CS50 ل.
>> وانا ذاهب لتشغيله على شيء كبير مثل انجيل الملك جيمس،
حتى نستطيع أن حقا وضع حلول الموظفين على المحك.
الآن في بعض الأحيان للإنترنت ل أبطأ قليلا، أسرع قليلا،
قد يستغرق بعض الوقت لتمرير.
ولكنها أخذت ما مجموعه 0.56 ثواني إلى التدقيق الإملائي الملك جيمس
الكتاب المقدس باستخدام محلول الموظفين.
حتى جيد جدا.
لك قد يكون أبطأ بكثير، وهذا شيء طيب تماما.
ولكن من الصحيح هنا.
لذلك هذا هو الحل الموظفين.
إذا ذهبت في وتنظيف النسخة PHP.
وانا ذاهب الى القيام به قليلا كما تظهر الخبز شيء.
ونحن في طريقنا إلى أخذ شفرة كتبت في وقت سابق، لذلك فمن الصحيح تماما.
لأن التعليمات البرمجية كتبت لن أن يكون صحيحا تماما الآن فقط.
ولكن إذا كنت تقوم بتشغيل إصدار PHP، ماذا لدي للتخلي عن اليوم؟
أخذني خمس دقائق ل تعيين تنفيذ ص خمسة، أنا أطالب.
ما الثمن الذي يدفع لي؟
نعم.
>> الحضور: السرعة.
رئيس 1: السرعة.
ماذا تعني؟
>> الجمهور: انها سوف يستغرق وقتا أطول.
>> رئيس 1: كل الحق.
دعونا نرى.
انها سوف يستغرق وقتا أطول، لا في الكتابة، ولكن لتشغيله.
نعم.
لذلك دعونا نحاول هذا.
حتى هنا انا ذاهب الى المضي قدما ونفعل PHP من مدقق الإملاء، ولأن الملف
دعا مدقق الإملاء.
لذلك أنا لست تشغيل القاموس، أذكر،
أنا تشغيل برنامج يسمى مدقق الإملاء.
انا ذاهب الى تمرير في نفسه ملف، الملك جيمس الخامس.
انها ترفع من قبل.
هذا يمكن أن يكون مجرد سرعة الإنترنت، حتى لا أقرأ كثيرا في ذلك.
لكنه لا يشعر أطول بالتأكيد.
1.26 ثواني.
>> الآن هذا لا تزال جميلة بسرعة لعنة، أليس كذلك؟
والسبب الوحيد الذي شعرت أشبه ثلاثة، أو أربعة، أو خمسة
ثانية، وهذا لمجرد الإنترنت كان يجري بطيئا.
كان وقت الكمبيوتر أنفقت 1.26 ثانية، مقابل أعتقد 0.56.
لذلك أكثر من مرتين كما بطيئة.
الآن هذا لا يزال الرتق بسرعة، ولكن هذا مظهر من مظاهر
من، في الواقع، أن سعر الدقيق.
>> لأننا تفسير في رمز خط سطرا،
وأن PHP برنامج يقوم بقراءة بلدي أعلى الرمز إلى الأسفل، من اليسار إلى اليمين،
عليها أن تفعل المزيد من التفكير.
انه ليس له اي نوع من تحويل في الداخل من نفسه
إلى الجهاز المقابلة كود على الطاير، إذا جاز التعبير،
على الرغم من أن الميكانيكا تختلف قليلا.
بدلا من مجرد إطعام ل إنتل وحدة المعالجة المركزية الأصفار الخام ومنها
أنه يفهم أصلا.
>> لذلك على الاطلاق، والأيدي، لقد دفعنا ثمنا.
ورمز مكتوبة بلغة مثل PHP يميل إلى أن يكون أبطأ.
لكن يا إلهي.
حتى الآن عندما التدقيق الإملائي بلدي ملف، أقضي إضافي 0.7
أو حتى ثانية مقابل 20 ساعة لتنفيذ أسرع المدقق الإملائي، أليس كذلك؟
انها نوع من المفاضلة.
وإذا كنت بدأت للتو ص تشكيل خمس، قد لا تكون 20 ساعة.
قد تكون أقل من ذلك بكثير.
لكنه مقايضة، لريال مدريد.
وإذا كنت تقوم بتشغيل تعليمات برمجية على كبيرة حقا مجموعات البيانات، أو على الأجهزة حتى كبار السن،
تلك الأنواع من الاختلافات بالتأكيد يمكن أن تضيف ما يصل.
>> أي أسئلة حتى الآن؟
نعم.
>> الحضور: (غير مسموع)
رئيس 1: آسف، يمكن كنت أقول ذلك مرة أخرى؟
الحضور: (غير مسموع)
رئيس 1: أنت التخلي الوقت.
حسنا، لذلك نعم.
كنت توفير الوقت عن طريق لا وجود لترجمة عليه،
اذا كان هذا ما كنت طالبا.
وبالفعل، في CS50، معظم البرامج،
على الرغم من أنها قد يستغرق بعض الوقت في الكتابة، انهم قصيرة نسبيا.
بضع عشرات، بضع مئات من خطوط للقانون، وهكذا تقوم بتجميع بسرعة كبيرة.
ولكن عند بدء تشغيل كتابة برامج أكبر،
مثل إذا كنت Microsoft أو كنت جوجل وكتابة برامج كبيرة حقا
في C أو C ++، أو ترجمة بالمثل لغات، يمكن أن يستغرق عدة ثوان،
أو حتى دقائق أو أطول ل تجميع الملايين من الأسطر من التعليمات البرمجية.
وهناك أيضا، أن الفرق هو ذاهب لتضيف ما يصل.
>> في واقع الأمر، بمجرد أن الانتقال اليوم، نفس اليوم
اليوم، إلى برمجة الويب باستخدام PHP، كنت
سوف تجد أنها مجرد كثيرا أكثر متعة لكتابة التعليمات البرمجية
عندما لم يكن لديك للقيام بهذه غبي خطوات مثل تغيير المحطة الطرفية
نافذة، اكتب جعل مرحبا، إعادة تشغيله، تحميل النافذة.
فقط الكثير من الغباء الخطوات الميكانيكية التي
فقط في الحصول على الطريق من القيام والمثير للاهتمام، والعمل متعة.
والواقع أننا رمي بعيدا مع PHP.
ونحن يمكن أن تتفاعل مع ذلك بسرعة أكبر.
نعم.
الحضور: (غير مسموع)
رئيس 1: بالتأكيد.
يمكنني توضيح ما يعني أن تفسر؟
عند ترجمة لغة مثل C، فإنه يذهب إلى أسفل
كما قلنا لآلة رمز، الأصفار ومنها.
وقررت إنتل منذ سنوات أن أنماط معينة من الأصفار ومنها
تمثل بالإضافة إلى ذلك، أو الطرح، أو الطباعة، أو العمليات الأساسية الأخرى.
في عالم لغة مفسرة مثل PHP أو جافا سكريبت، أو بيثون،
أو روبي، أو عناقيد الآخرين، بدلا شخص
وقد كتب interpreter-- في هذه الحالة،
انه دعا أيضا PHP، مطابقة لل اسم language-- أن الأساس
لديه حلقة كبيرة في أن بالتكرار على جميع خطوط رمز
أن أتغذى ذلك كمدخل، مثل مرحبا نقطة PHP، أو القاموس نقطة PHP.
>> ومن ثم يمكن ان يخطر لك على كبيرة حلقة وجود الكثير من الشروط.
وتقول تلك الشروط، وإذا كان تمت كتابة البشرية الكلمة ل،
تبدأ في فعل له أو لها الرمز مرة أخرى ومرة ​​أخرى.
أو إذا كان الإنسان عليه كتابة سطر من التعليمات البرمجية،
إذا، تنفيذ فقط على السطر التالي مشروط.
لذلك فمن حقا مثل تفسير هو في الإنسان الشعور، خط
سطرا، وذلك فقط يستغرق وقتا طويلا.
فإنه يأخذ في سماء المنطقة.
وهكذا هذا هو price-- حسن question-- نحن ندفع.
لذلك دعونا نفعل تجريبي آخر هذا هو قليلا أكثر دراماتيكية.
هناك، وانا اقول، وهو الملعب هذا في احتمال 90٪ من الفشل فظيعة،
ولكن سوف يكون لكم عن دهشتها مع 10٪ احتمال.
لذلك كل عام ونحن نحاول للقيام بذلك، حيث نحن
محاولة لكتابة البرنامج الذي يمر المشكلة مجموعة الصفر، والتي كنت قد
قدمت أرقام الهاتف و الكثير من المعلومات الديموغرافية الأخرى،
ونحن برمجيا نرسل لك رسالة نصية.
ثم الهاتف الجميع يبدأ التصفير أو تهتز،
وانها مجرد مذهلة، ل كذلك، نلقي نظرة على ما يمكن القيام به أجهزة الكمبيوتر.
>> هذا نادرا ما تعمل بشكل صحيح على ما يبدو، في جزء كبير منه
لأنني عادة الحصول على القائمة السوداء بواسطة Gmail أو بعض الخدمات الأخرى
لفي الواقع محاولة للقيام بذلك على نطاق واسع.
ولكن الشيء المضحك هو أيضا، لأننا لم يكن لديك الجميع هنا اليوم،
متعة حقيقة في المرة الأخيرة التي حاول هذا قبل عامين،
أعتقد أنني كتبت برنامج الجالس في حلقة بالتكرار
على جميع الطلاب في الصف، ولكل واحد منهم رسالة نصية،
وقالت انها شيء من هذا القبيل، لماذا ليست لك في المحاضرة؟
الحب، CS50 بوت.
>> لا يوجد لديك فكرة عن عدد اعتذاري ورسائل البريد الإلكتروني نوع من مؤلمة
لقد تلقيت ردا من ن ناقص 100 شخص الذين لم يكونوا هنا
ذلك اليوم.
وحتى تسلية، story-- أكثر مخجل كما تعلمون، دعونا نضع بها هناك.
انها بالفعل على الفيديو قبل بضع سنوات.
لذلك سوف يراني قريبا إرسال بريد للحلقة، حيث
فمن السهل جدا أن يكتب خلل في هذا للحلقة، بحيث أول مرة
خلال الحلقة، كنت إرسال رسالة نصية واحدة.
>> للمرة الثانية خلال الحلقة I يجب أن أرسلت أكثر واحد رسالة نصية،
ثم أكثر من نص واحد رسالة واحدة أكثر من ذلك.
ولكن اتضح إذا قمت بإجراء الخطأ المطبعي عندما البرمجة، وأحيانا كنت
يمكن كتابة البرامج التي ترسل واحدة رسالة نصية، ثم رسالتين قصيرتين،
ثم رسائل نصية ثلاثة للجميع من الذي تلقت بالفعل رسالة نصية.
وكما تعلمون، تفعل شيئا، بالإضافة إلى شيء، بالإضافة إلى شيء،
بالإضافة إلى شيء، هو O كبير من الكثير من الرسائل النصية، أو ن مربع،
أو على 0،10 $ رسالة نصية، 20000 $.
>> الحمد لله أنا ضربت تحكم-C قبل أن حدث، لكنني لم مدين واحد على الأقل
من أسلافكم 20 $ لل 200 بعض الرسائل النصية الغريب أن،
لا توجه فقط إلى هاتفه، ولكن أيضا كان مثل هاتف الآخر السن
لذلك أحب طردوا من له ذاكرة كل نص شخصية أخرى
الرسالة التي قد حصلت فعلا.
لذلك لدينا هدف واحد اليوم، لا تفعل ذلك.
ربما تشغيل وضع الطائرة.
حسنا.
لذلك دعونا ندخل برنامج هنا callled--
أن سأدعو النص نقطة PHP.
ومقدما، لقد حصلت على ملفين هنا.
أنا قدمت ملف للموظفين فقط، وهذا ما حصل كل المعلومات للموظفين، وجميع الأسماء
من موقع الدورة على.
ثم الآن أنا فقط وضعت بعض الأرقام وهمية 555-1212.
لذلك فإن هذه لا تذهب في الواقع في أي مكان.
ولكن لاحظ داخل هذا الملف CSV، الذي تحدثنا عنه قبل فترة وجيزة
في سياق ملف IO.
>> ما هو ملف CSV؟
مفصولة بفواصل المتغيرات.
وهذا هو نوع من مثل جدا قاعدة بيانات خفيفة الوزن، اذا صح التعبير.
هناك نوع من نوع من أربعة أعمدة في هذا الملف، وهناك خشنة،
ولكن الفواصل أساسا تمثل الأعمدة في الملف.
العمود الأول هو TF أو اسم CA ل.
العمود الثاني هو اسم العائلة.
العمود الثالث هو رقم هاتفهم.
والعمود الرابع is-- على ما يبدو العمود الرابع هو على ما يبدو ما؟
OK، لذلك فمن الناقل لها.
لذلك فيريزون، أو سبرينت، أو ليس ما.
وإذا كنت اخطأ في وقت سابق، CSV.
مفصولة بفواصل القيم هي CSV هنا.
>> لذلك ماذا يمكنني أن أفعل مع هذا؟
حسنا هذا هو مجرد ملف نصي كبير، وانها نوع من فترة طويلة، أليس كذلك؟
مثل هذا يحدث ل أن يكون نوع من مزعج.
واتضح، على الرغم من أنني إذا تريد أن ترسل رسالة نصية إلى، دعونا
يقول أليكس هنا.
اسمحوا لي أن أذهب إلى متصفحي والخروج من وضع ملء الشاشة
فقط حتى أتمكن من تبديل ذهابا وإيابا.
كما تبين، دعونا نرى، إذا ذهبت في هنا، وتسجيل الدخول إلى Gmail، كل الحق.
لا تبدو في هذا الجزء.
فقط لأنني الحصول على رؤية.
بالطبع يمكن للlivestream لا تزال ترى ما أفعله.
حسنا.
>> حتى هنا هو مجرد بريد جوجل مع حساب جون هارفارد.
لذلك إذا كنت تريد أن ترسل رسالة نصية إلى أليكس،
أستطيع أن يؤلف بالطبع الرسالة.
واتضح، ولدي اختباره مع أليكس قبل هنا،
حتى تتمكن من إلحاق مجال معين اسم إلى أرقام هواتف الناس،
لأن يوجد في العالم تسمى الأشياء SMS إلى البريد الإلكتروني العبارات.
وهي طريقة أخرى للقول كل من منا الذين لديهم هواتف النقالة التي
لدينا أرقام الهاتف، وبطبيعة الحال، هناك ربما هو الناقل الخاص بك،
لاحقة معينة مثل في Vtext.com لرسالة نصية فيريزون
دوت كوم، والتي يمكنك إلحاق بك رقم الهاتف الخاص الشخصية، ومن ثم
أنت أو الأصدقاء، أو والديك وسعها لكم نص في ذلك عنوان معين.
>> وفيريزون لديه خادم بريد الكتروني الخادم، أنه عند تلقي هذا البريد الإلكتروني،
يبدو في الجزء رقمية ثم يستخدم أيا خاص السحر الصناعة
لديهم لإرسال فعلا على مدى موجات الأثير إلى خلية معينة
هاتف.
الآن هذا هو لطيف لأنني لا أعرف حقا كيف لإرسال رسالة نصية
أو لكتابة التعليمات البرمجية حتى الآن لهاتفي المحمول،
وكنت قد تفعل ذلك بالضبط ل المشروع النهائي، ولكن الآن كل
لدي هو جهاز الكمبيوتر المحمول هنا.
لذلك أريد أن أعاد على أن CSV ملف، خط، سطرا، سطرا، سطرا،
الاستيلاء على كل من أرقام الهواتف للموظفين، والناقل وبرمجيا،
سلسلة، وهذا هو، توصيل الهاتف الرقم مع اسم المجال المناسب
ثم قم بإرسال رسالة بريد إلكتروني.
>> ذلك أن هناك العديد من الخطوات.
ونتمنى لك التوفيق يفعل ذلك في C. انه كابوس من الوضع
لفتح ملف، لقراءته الخط، سطرا، سطرا، كما كنت
نشهد، أو قد نرى قريبا مع مشكلة تشكيل خمس، إن لم يكن
مشكلة تعيين أربعة، ثم لسلسلة حيوي
سلسلتين معا، لأنه في C، أن تأخذ سلسلتين والجمع بينهما،
ماذا عن الحد الأدنى تحتاج إلى القيام به على الأرجح؟
تحتاج إلى إعلان المزيد من الذاكرة، أليس كذلك؟
ونسأل، malloc، يمكنني الحصول على مزيد من الذاكرة؟
حتى أتمكن من وضع نصف هذا هنا، نصف هذا هنا.
انها مجرد الكثير من الخطوات.
وهذه النقطة كنت قد فقدت الاهتمام التجريبي غبي قليلا
حيث يمكنك جعل الهاتف تنبيه الجميع.
دعونا نفعل هذا النوع من PHP النمط، حيث أننا فقط
بدء استخدام أكثر من ذلك بالوعة المطبخ.
>> والأفكار في الأساس نفسه،
لكننا لا داعي للقلق للغاية الكثير عن هذا المستوى أقل.
لذلك دعونا نرى كيف قد تذهب عن القيام بذلك.
ومجرد أن ذلك أنا لا تكرار أخطاء الماضي،
لقد كتبت بعض الملاحظات لنفسي هنا.
ودعونا نرى ما اذا كان يمكنني المشي لنا من خلال بعض الخطوات الأساسية،
ثم من أجل الوقت وسنقوم ربما قطع بعض زوايا في نهاية المطاف.
انا ذاهب الى المضي قدما ونفعل مفتوحة قوس PHP لبدء هذا الملف.
وانا ذاهب الى المضي قدما ونفعل ذلك.
التعامل مع الملف، كما عليك نرى قريبا، في الواقع
استدعاء دالة يسمى و مفتوحة.
وتذكر هذه يفتح الملف.
والاقتباس، نهاية الاقتباس، ص يعني ما، مرة أخرى؟
مجرد فتحه للقراءة.
الآن في ص مجموعة ل، يمكنك فعل هذا.
والتعامل مع يمكن أن يكون أي شيء، فو، بار، بس، أي اسم المتغير.
ولكن بصفة عامة كمبيوتر سيكون عالم استدعاء ملف مفتوح،
مما يتيح لك التعامل مع الملف، شيء إلى التمسك إذا جاز التعبير.
أنا ذاهب لمجرد القيام بعض التحقق من الخطأ.
لذلك إذا كان المؤشر غير كاذبة، تماما مثل في C، انا ذاهب الى القيام به شيء من هذا القبيل،
لا يمكن فتح ملف، مائل ن.
ثم انا فقط على المضي قدما والخروج.
واتضح، في PHP، أنا لست داخل دالة.
ليس هناك وظيفة الرئيسية هنا.
لذلك أنا لا يعودون، في حد ذاتها.
I خروج.
التي هي في جوهرها نفس الشيء.
وأنا الخروج مع ذ واحد على الأرجح.
واحد يعني مجرد خطأ من نوع ما.
انها غير صفرية، لذلك فمن خطأ.
>> كل الحق، حتى إذا أنا إلى هنا الآن في برنامجي لقد فتحت الملف.
انا ذاهب الى المضي قدما وتعلن مجموعة تسمى عناوين،
وC أود أن أعرف حجم المصفوفة مقدما، أليس كذلك؟
أو كنت في حاجة الى اعلان هذا هو مؤشر، ومن ثم استخدام malloc.
ثم في كل مرة وأنا أقرأ من خلال صف آخر في الملف،
انا بحاجة الى الذهاب الى malloc المزيد من الذاكرة، malloc المزيد من الذاكرة.
هذا هو الألم في الرقبة.
ولله الحمد، PHP، وروبي، وبيثون، وجافا سكريبت، فإنها
سوف تنمو المصفوفات الخاصة بك بالنسبة لك تلقائيا.
لا مزيد من malloc.
لا مزيد من إدارة الذاكرة.
الكمبيوتر يعتني ذلك.
ولكن الثمن الذي تدفعه.
انها أبطأ قليلا.
وللحصول على مثل هذا البرنامج نحن لن تلاحظ.
ونحن في طريقنا لارسال 100 رسائل نصية.
على سبيل المثال لن تشعر به.
IT حقا يبدأ فقط ل يهم اللغة التي تختارها
عندما تكون البيانات الخاصة بك أو البرامج الخاصة بك الحصول على الحقيقة، لا بأس به حقا،
كما سيكون الحال أكثر من ذلك مع الاشياء لدينا على شبكة الإنترنت.
>> ولكن الآن دعونا المضي قدما.
في حين اتضح هناك وظيفة في C تدعى و الحصول CSV.
ملف الحصول على CSV، أن يأخذ ملف مقبض كما حجتها،
وتشرع بعد ذلك، الصف، من خلال الصف، من خلال صف واحد، لقراءة على التوالي.
بحيث يقرأ مجرد خط النص من الملف.
ولكن ما هو لطيف حول هذه الوظيفة، فإنه لا مجرد تسليم لي سطر من النص.
فإنه يبحث عن تلك الفواصل، ويوزع على خط المرمى.
وتحليل خط يعني تقسيم على بعض القيم في هذا السياق.
>> وبعبارة أخرى، الدولار الصف متغير هذا
ذاهب لإعطاء لي حفنة من الفهارس.
هذا وستكون العمود الأول في بلدي CSV.
هذا يحدث ليكون ثاني العمود، وهذا سيكون الثالث،
وهذا سيكون في المركز الرابع.
لأن الاستدعاء، وإكسل وليس التعاون في المرة الأخيرة فعلنا هذا،
ولكن إذا كنت تحميل الموظفين دوت CSV.
يصيح، وليس إعادة تسمية.
إذا كنت تحميل نقطة الموظفين CSV، ومحاولة فتحه،
لقد registered-- بالفعل يا أنا لم يتم تحديث إكسل منذ آخر مرة.
سترى أن في نقطة الموظفين CSV، ولدي أربعة أعمدة.
لذلك عندما قرأت في الصف الأول لآبي هنا،
الدولار علامة التوالي 0 غير آبي، الصف علامة دولار واحد هو ليون،
علامة الدولار الصف الثاني هو رقم هاتفها، ثم الناقل هاتفها ل.
>> لذلك هذا كل شيء.
وهذا لطيف، لأنني لم يكن لديك لمعرفة من الآن
حيث كل تلك الفواصل هي في الواقع.
لذلك أنا ذاهب إلى المضي قدما و القيام بذلك، نظرا إلى أن التعريف،
انا ذاهب الى القول بأن اسمها في الصف قوس الصفر، كما وعدت.
وانا ذاهب الى grab-- و في الواقع، أنت تعرف لماذا؟
أنا لن تقلق اسمها، في هذه الحالة.
انا ذاهب الى ابقائه بساطة.
انا ذاهب الى القيام به هو رقم هاتفها في الصف قوس اثنين، على ما أعتقد.
وكان الناقل لها في أين؟
الصف الثالث، واحد انتهى.
لذلك لا شيء جديد هناك.
انها مجرد صفر الفهرسة في صفيف.
>> والآن، انا ذاهب الى القيام بما يلي.
إذا يساوي الناقل يساوي AT & T-- أنا فقط ستكون لدينا loop--
أريد أن إنشاء بريد إلكتروني عنوان يشبه هذا.
انها سوف تكون 617-555-1212 في ما هو عليه، text.ATT.net،
ما أريد القيام به.
فكيف أفعل ذلك؟
انا ذاهب الى القيام بما يلي.
عنوان لها سيكون لها عدد، والآن، اسمحوا لي أن نمضي قدما ونفعل ذلك.
هذه هي بعض تركيب غير تقليدي.
أنا يمكن أن تفعل في المئة الصورة خدعة، ولكن يمكنني في الواقع مجرد قيام بذلك.
>> لذلك هذا هو الشيء PHP، ولكن دعونا نتأمل ما أفعله.
دولار توقع العنوان على اليسار، مجرد متغير.
أعطني متغير.
ليس لدي لتحديد نوع.
سوف PHP معرفة ذلك.
على جهة اليد اليمنى، ما هو نوع البيانات
من هذا الشيء كله على الجهة اليمنى؟
يبدو وكأنه سلسلة، لأن هناك ضعف
يقتبس على اليسار المتطرف واليمين المتطرف.
الآن هناك بعض جملة جديد غير تقليدي هنا.
هناك الأقواس المعقوفة، وعدد علامة الدولار.
لكن اتخاذ تخمين ما هو هذا النحو ربما يقول PHP القيام به بالنسبة لي؟
نعم.
فقط ضع القيمة هناك.
لذلك لا بالمئة الصورة.
يمكننا استخدام و الطباعة أو الصورة و الطباعة أو شيء مثل ذلك،
ولكن PHP والكثير من لغات المستوى العالي،
وأنت تسير لنرى ان كنت تستطيع تفعل الشيء نفسه وظيفيا، وربما
ستة طرق مختلفة.
وهكذا تبدأ لتصبح مسألة التصميم أو النمط.
لذلك هذا هو مجرد وسيلة خفي أبحث للقول، أن تعطيني عنوان البريد الإلكتروني،
ولكن المكونات في عدد في بين هذه الأقواس المعقوفة.
ولن الأقواس المعقوفة ينتهي في العنوان النهائي.
>> الآن يمكننا تجاوز بعض هذه الخطوط من اجل الوقت ل.
حتى إذا تساوي الناقل يساوي verHorizon-- يصيح،
Verizon-- أريد أن أفعل شيئا مشابهة جدا، حيث العنوان يحصل،
الاقتباس، نهاية الاقتباس، عدد في text.ATT.net.
وبعد ذلك يمكن أن تفعل نفس النوع من الشيء بالنسبة لبقية شركات الطيران.
ولكن سأفعل فقط نقطة، نقطة، نقطة في الوقت الراهن.
والآن دعونا نفترض أن اريد ان اضيف مجموعة، دفع.
وأود أن أضيف إلى مجموعة، ودعا العناوين.
>> هذا العنوان، وهذا هو كيف أضيف شيئا إلى صفيف في PHP.
أنت لست بحاجة إلى أن تفعل malloc.
لم يكن لديك لتغيير حجم المصفوفة.
كنت أقول مجموعة، دفعة.
ماذا تريد push-- ما مجموعة هل تريد دفع شيء على؟
عناوين.
ماذا تريد أن تدفع على عناوين؟
عنوان.
وفي الواقع، إذا كنت تريد حقا أن تكون ذكية،
بعض نحوي السكر لهذا، إذا جاز التعبير،
وهو ما يعني فقط كيف يمكنك أن تفعل هذا في الطريق أجمل، سيكون للقيام بذلك.
التي لديها أيضا تأثير متزايد مجموعة عناوين حسب حجم واحد،
وصوت نزول المطر بعد ذلك إضافي عنوان البريد الإلكتروني في ذلك.
نعم.
>> الحضور: (غير مسموع)
>> رئيس 1: خطأ مطبعي على آخر if-- أوه، الناقل.
وهذا موافق.
فإنه سيتم أيضا لا أحب فشلي في تنفيذ جزء من هذا البرنامج
في وقت لاحق.
لكن شكرا لك لالتقاط.
واحد علة أكثر من ذلك.
شكرا.
نحن نريد أن تكون هذه Vtext.com.
نعم فعلا.
حسنا.
فأين هذا لا يترك لنا؟
لقد كتابة التعليمات البرمجية لفتح الملف.
لدينا حلقة تكرار أكثر من الصفوف في الملف.
لدينا الرمز الذي يضيف إلى بلدي مجموعة، في وقت واحد، وبشكل صحيح
عنوان البريد الإلكتروني تنسيقها.
لذلك كل ما تبقى حقا هو أن ترسل بريد الكتروني الى كل هؤلاء الناس.
>> حتى لقد ذهبت إلى الأمام و اعدت نفسي على النحو التالي.
ما أنا ذاهب الى القيام به هنا is-- ودعونا المضي قدما وتخطي إلى بعض الرمز الفعلي،
والتي تبدو مثل هذا.
حتى هنا هو ما قبل خبز نسخة كتبت في وقت سابق.
وتلاحظ انتهيت تنفيذ العدو.
انتهيت من تنفيذ تي موبايل.
انتهيت من تنفيذ فيرجن موبايل.
وأنا لن أعتذر مقدما.
هناك عدد قليل من شركات الطيران التي بعض الطلاب في الصف يكون
أنني لم يكلف نفسه عناء تعداد في حالة إذا هنا.
لذلك ليس كل النصوص سوف تخرج.
ولكن دعونا نرى ماذا يجب أن أفعل.
I إغلاق الملف، فقط كما في ص تعيين أربعة.
>> وهذا هو جملة جديد.
وسنرى قليلا قليلا من هذا مع مرور الوقت،
خصوصا مع ع حطم سبعة وثمانية.
ولكن هذا هو بناء الجملة من أجل خلق نوع خاص من الهيكل.
اتضح هناك المكتبة التي يأتي مع PHP، ودعا الارسال PHP.
هدفه في الحياة هو أن برمجيا إرسال رسائل البريد الإلكتروني.
كتب انها رمز لشخص آخر أن يجعل من الأسهل بالنسبة لنا أن نرسل رسائل البريد الإلكتروني،
لذلك نحن لم يكن لديك للحفاظ على ذهابا وإيابا إلى Gmail،
ولصق عناوين البريد الإلكتروني الناس.
هناك مجموعة كاملة من خطوط هنا هذا بصراحة، أنا مجرد نوع من نسخها
ولصق من وثائق.
وفي الواقع، إذا كنت الغريب، وأنا تركت كل
من عناوين الوثائق في التعليمات البرمجية التي سنقوم الرد في وقت لاحق.
ولاحظ أن من بين الأشياء أفعله
هو، أنا أقول هذه المكتبة، استخدام الخادم في Gmail، أليس كذلك؟
SMTP تحدثنا بإيجاز عن عندما كنا كانت في جامعة ييل عن كونها البريد البسيط
بروتوكول نقل.
انها البروتوكول الذي الخوادم المستخدمة لإرسال البريد الإلكتروني،
وthat's-- جوجل لديها واحد من هؤلاء.
A الميناء، هذا هو رقم المنفذ TCP.
لا بأس إذا كنت لم أر 587 قبل.
أعرف تماما أن من وثائق.
وهنا اسمي.
انا ذاهب الى استخدام بوت CF50.
وفي لحظة، وأنا ذاهب لمجرد اكتب في كلمة بوت الفعلية.
ثم إلى هنا، لاحظ ما تبقى.
>> أنا وضعت لي من عنوان أن بوت في CS50.net.
أنا أعتقد أنني لن تندم إرسال رسالة نصية إلى 800 شخص أن
يقول: نفتقدك والمحبة CS50 بوت، وربما بالنسبة لأولئك الذين لم يتمكنوا من الحضور اليوم.
ثم في خط 76، ماذا أفعل؟
هذا النوع من يشبه C. لذلك لأنني يساوي 0، ن equals-- الآن الاعتماد هو جديد.
اتضح أنه إذا كنت ترغب في الحصول على عدد الأشياء في صفيف،
لم يكن لديك أن نتذكر أنه بعد الآن.
يمكنك أن تسأل فقط وظيفة تسمى العد،
وسوف اقول لكم كم عناوين هي في أن مجموعة.
>> ثم انا ذاهب لإضافة العنوان إلى البريد الإلكتروني.
وأنا أعلم أن هذا من باستخدام وثائق.
هناك وظيفة عنوان الوظيفة.
والآن نلاحظ هناك هو قطعة واحدة من بناء الجملة.
لقد رأينا ذلك من قبل في C. مماثلة في الروح.
يمكنك التفكير في علامة الدولار البريد كمتغير الذي هو عليه.
بل انها بنية داخل التي ليست فقط الخصائص،
المتغيرات اذا صح التعبير.
ولكن تبين أن في PHP، التي هي البرمجة الشيئية
اللغة، مثل جافا إذا أخذت APCS.
>> البريد علامة الدولار، إذا كنت تريد to-- كما أن لديها وظائف داخل منه،
أو الأساليب.
لذلك هذا هو القول بأن خاص الارسال PHP
مكتبة، وإذا كنت قد حصلت على المتغير منه، إذا كنت ترغب في استدعاء دالة التي
يأتي مع هذه المكتبة، لأغراض اليوم،
أعلم تماما استخدام التدوين الأسهم.
ليس هناك نقطة تدوين.
انها مجرد السهم.
ولكن هذا ليس مؤشر.
لقد اقترضت فقط لأنه من جملة C ل.
لذلك ندعو إضافة عنوان داخل وجوه هذه المكتبة أو متغير.
>> حسنا.
هذا هو الخط السحري.
كيف لي ان ترسل بالبريد.
وهذا هو ما يعادل الانفتاح بريد جوجل، وكتابة بها، وضرب إرسال.
لكنه سيحتاج إلى بدلا إرسال البريد الإلكتروني إلى هذا العنوان، مع هذه الهيئة،
من بوت CS50.
والآن خط رئيسي.
كانت غائبة في مثل هذا الخط 2011 عندما أفكر آخر محاولة لي هذا.
هذا الخط هناك، بطبيعة الحال، مسح العناوين.
لذلك منطقيا، إذا أنا لا امسح عنوان
بعد كل التكرار، الأولى البريد الإلكتروني أو يذهب رسالة نصية إلى أليس،
والثاني يذهب إلى أليس وبوب، والثالثة
يذهب إلى أليس وبوب وتشارلي، وبالتالي خطأ مكلف للغاية
أدليت به في تلك السنة.
>> لذلك دعونا نرى.
هل هناك أية اسئلة قبل أن نرسل لكم جميعا النص
رسالة مع 10 في المئة احتمال؟
أي أسئلة؟
حسنا.
دعونا لي أن أذهب هنا والتغيير كلمة السر لماذا يجب أن تعمل،
من المرجح أن تحصل على القائمة السوداء من قبل جوجل.
حتى أنها قد تذهب ليست كل بها، لأنها على الأرجح
لا يحبوننا إرسال رسائل البريد الإلكتروني 800 في حلقة for في كل مرة.
ومنذ ذلك ليس السلوك البشري بشكل خاص.
>> أوه، انا ذاهب الى تغيير شيء آخر.
في أعلى، انا ذاهب الى sent-- تغيير ملف للطلاب دوت CSV.
وأنا لن تفتح هذا، ولكن هذا هو ملف CSV متطابقة مع عدم 100 موظف،
ولكن 800 طالبا فقط من جامعة هارفارد، ليال
لديها عطلة شهر أكتوبر من هذا الأسبوع.
ويبدو نوع من شيء رعشة القيام به لنص كل منهم لماذا
انهم ليسوا في الصف في عطلة.
وهذا موافق.
فقط طلاب جامعة هارفارد اليوم داخل هذا الملف.
والآن دعونا نعود لنافذتي المحطة.
انا من النوع العصبي.
>> طيب حتى الآن أنا ذاهب للذهاب الى دليل، والنص PHP نقطة PHP.
ماذا عن المتطوعين الشجعان واحد؟
لذلك أنا لا أريد هذا لي.
OK، وتأتي على ما يصل.
ما اسمك؟
MAYA: مايا.
رئيس 1: مايا.
تأتي على ما يصل، مايا.
حسنا.
دعونا نرى ما اذا كان هذا يعمل.
أضع عنوان البريد الإلكتروني الخاص في الملف-- رقم هاتفي الخاص في الملف،
بحيث نأمل سأحضر واحد كذلك.
تشرفت بمقابلتك.
MAYA: وبالمثل.
رئيس 1: لذلك كل ما عليك القيام به هو هاهنا لإرسال الرسائل النصية 800،
إذا لم أكن المسمار.
لطيف.
يمكن أن يستغرق بعض الوقت، إحصائيا، حتى نحصل على رسالة بريد إلكتروني address--
رسالة نصية هذا في غرفة في الوقت الراهن.
دعونا نطيل ونرى.
>> الحضور: [صفير]
>> رئيس 1: أوه، نعم.
>> الحضور: أوه، مسكتك.
>> رئيس 1: للحصول على الحلقات are-- هذا ليس بطيئا بسبب PHP.
هذا هو بطيئا بسبب جوجل واختناق لنا وليس
السماح لنا بإرسال أكثر من مثل البريد الإلكتروني واحدة في الثانية الواحدة.
اى شئ؟
كان هذا شيء من الصعب بالنسبة لي لاختبار في المنزل معي فقط وهاتفي واحد، لذلك.
غير أن نأمل من بوت؟
نعم فعلا؟
لا؟
قل نعم.
لا؟
انها من صديق؟
غير ملائم.
حسنا.
متأكد من انها تعمل بالرغم من ذلك.
اه اوه.
أنها black-- يا، انتظر لحظة.
أوه، أنت تعرف لماذا؟
لحظة واحدة من فضلك.
فقط كان مايا وI-- ميا، أليس كذلك؟
MAYA: مايا.
رئيس 1: مايا، في طريقهم ل تعرف ماذا فعلت الخطأ هنا.
أوه، انتظر لحظة.
أعتقد أنني أرسلت بعد 100 رسائل نصية إلى 555-1212.
تعليق.
لا أستطيع أن فوز أي سنة.
حسنا.
مايا؟
تحديد ذلك في مرحلة ما بعد الإنتاج.
اللعنة!
وانطلاقا من العنوان.
OK، الوقوف إلى جانب.
آسف.
إنه أمر مؤلم كل عام.
OK، لحظة واحدة.
هذا جيد.
أنا بدلا من ذلك الذهاب للقيام بذلك.
عنوان الطباعة.
OK، الوقوف إلى جانب.
عناوين الطباعة، قوس ط.
نعم، أنا أحب ذلك.
الدولار sign-- OK ساوضح ما أنا فعل في لحظة، بعد أن قمت بتشغيل هذا.
كل عام.
OK، هنا نذهب.
لدي just-- وأنا لا أريد لعرض رقم الهاتف الجميع،
لكن مايا ان اؤكد مع إيماءة الرأس،
أن ترى الجميع رقم الهاتف في فئة
أنني ذاهب لنسخ إلى برنامج يسمى بريد جوجل.
وإذا في Gmail، ماذا نريد أن نقول؟
أفتقدك.
Love-- هذا ليس مني.
أنا لم تصل حتى ترسل حتى الآن.
لذلك دعونا نمضي قدما ونفعل هذا، وإذا كان يمكنني تكبير.
حسنا.
لذلك أنا باستخدام برنامج يسمى جوجل الآن.
إذا مايا، وكنت ترغب في انقر فوق الزر إرسال،
سنقوم محاكاة ما أن كود ينبغي القيام به.
>> اى شئ؟
>> [الصفافير]
>> الجمهور: نعم.
>> رئيس 1: نعم؟
الخلاص؟
>> الجمهور: نعم.
رئيس 1: اشتقت لك.
وانا ذاهب لإرسال بقية.
بعثت نصف لأنني لا أعتقد أن جوجل تسمح لهؤلاء من خلال الذهاب.
لذلك تذكر فقط، واليوم هو اليوم ان كنت تعلم أنني يمكن أن تستخدم Gmail.
كان ذلك مرعبا.
A تصفيق كبير لمايا.
شكرا.
كل الحق، لذلك.
ماذا
>> [الصفافير]
>> حصلنا على عدد قليل من الأصوات، نعم؟
حسنا.
الآن انا ذاهب الى الحصول على 700 حقا رسائل البريد الإلكتروني غير سعيدة مرة أخرى من زملاء الدراسة.
وذلك على الأقل سنرى إذا كان هذا يستحق كل هذا العناء.
وذلك ما حدث من خطأ؟
سوف يجدوا ما ذهب الخطأ بعد وقوعها،
ولكن مجرد إلقاء نظرة مدى سهولة كان للقيام بذلك في PHP.
فماذا يمكننا أن نفعل في الواقع الآن أن لدينا هذا التعبير من PHP.
أن was-- أن كان فظيعا.
حسنا.
لذا كان هذا ما كان ينبغي أن خرج.
وهذا اختبار لي هذا الصباح على بلدي الهاتف، شاشة الفعلية من هاتفي.
>> ولكن الآن دعونا النظر في السبب نحن إدخال فعلا
كل هذه الاشياء في المقام الأول.
وبالتالي فإن الهدف ليس ل أكتب هذه البرامج التي
مكتوبة في سطر الأوامر، أليس كذلك؟
لذلك كتبت بسيط مرحبا البرنامج، كتبت
القليل من البرنامج الذي لا الشرطية، وتستخدم خط القراءة وهكذا دواليك.
ونظريا، وأنا كتبت للتو برنامج التي ترسل
الرسائل النصية 800، يعطي أو يأخذ 800.
وكان هذا البرنامج جميع لا تزال تعمل في سطر الأوامر.
وهذا بالطبع هو ليس على شبكة الإنترنت، أليس كذلك؟
الهدف الآن للبدء في استخدام ما أزعم هو أسهل للاستخدام
لغة، نحسب أكثر لغة قوية من حيث
من الميزات التي تأتي معها، لبدء
كتابة التعليمات البرمجية التي يولد صفحات الويب.
>> حتى آخر مرة والأسبوع الماضي، تحدثنا عن HTTP و HTML.
وما هو لطيف حول HTML غير أنه من النص مجرد محض.
والنص هو بالتأكيد شيء يمكنك أن
طباعة بالدعوة حرفيا الطباعة و وظيفة، أو وظيفة الطباعة.
والواقع، وهذا ما هو PHP الآن سوف تتيح لنا القيام به.
لذلك من بين الأمثلة نحن لدينا في شفرة المصدر اليوم،
بالإضافة إلى بعض من قانون أن أضع الى هناك قبل لحظة،
لدينا مثل هذه البرامج على سبيل المثال.
Froshims، أو طالبة جماعية الرياضة، كان في الواقع
واحدة من extracurriculars الأولى لقد اشتركت مع منذ سنوات.
وزميلتي في الغرفة وأنا، مع بعض الأطفال الآخرين في الحرم الجامعي،
تستخدم لتشغيل البرنامج froshims.
انني اتلقى رسائل نصية بلدي الآن.
>> الآن لذلك نحن، مرة في اليوم، وحتى هذا كان 1996 أو نحو ذلك، كان هناك الإنترنت،
ولكن لم يكن هناك process-- هناك كان أي موقع لfroshims.
وحتى إذا كنت تريد الاشتراك في كرة القدم أو الكرة الطائرة أو أيا كان،
كنت ملء هذا الشيء دعا قطعة من الورق،
وأنت تمشي في جامعة هارفارد الفناء، وكنت الانزلاق
في فتحة البريد في بروكتور، الذي كان في Wigglesworth، واحدة من مساكن الطلبة.
وهذا كان قمت بالتسجيل.
وانه أو انها سوف ثم إنشاء بريد الكتروني لك
يدويا، مثل الكثير من I فعلت هنا مع مايا،
ثم كنت تأكيد كما أنها كانت مسجلة.
>> لذلك كان هذا مثل منخفضة شنقا الفاكهة، إذا جاز التعبير.
أنه نوع من الغباء أن كنا باستخدام ورقة لهذا الغرض.
كنت أريد لنا أن نكون قادرين للذهاب فقط على موقع على الانترنت،
أو لديك المبتدئون الذهاب في الموقع، تسجيل للألعاب الرياضية،
ومجرد أتمتة الكثير من هذه الاشياء عن طريق وضع أسمائهم ورسائل البريد الإلكتروني
وهكذا دواليك في قاعدة بيانات.
وفي الواقع، فإن النسخة الأولى جدا من الموقع، وذلك باستخدام السوبر قبيحة HTML،
ربما بدا شيء من هذا القبيل.
كان في الواقع، ومن المفارقات، وأكثر أبحث محرجة من هذا مرة أخرى
ثم.
ولكن أنا استخدم لغة البرمجة.
لا PHP، بل دعا بيرل، وهي لغة قديمة،
لكنها متشابهة جدا في الروح.
وأنا فقط تماما تدرس لنفسي.
واستغرق الأمر مني بعض الوقت لمعرفة ذلك، يسأل الكثير من الأسئلة من الأصدقاء.
ولكن هناك أفكار كان بالضبط نفس الشيء.
لأن ما كان PHP مصممة حقا ليست الاشياء سطر الأوامر
لعبنا فقط مع، ولكن لبرمجة الويب.
>> انها مرتبطة حقا في ميزة لها وضع على شبكة الإنترنت، على النحو التالي.
هذا هو froshims.
وإذا أردت أن التسجيل في هذا النموذج،
هذا هو قبيح جدا، بالتأكيد، ولكن اسمحوا لي أن المضي قدما
ويكون الطالب أقل راحة، ومهما كانت الرياضة من أجل ماثيوز،
انقر فوق تسجيل.
ما أريد أن تكون قادرة على القيام به هو تقديم المعلومات من نموذج،
لا خادم Google مثل فعلنا آخر مرة، تماما
الغش باستخدام الواجهة الخلفية، وأنا تريد تنفيذ قانون بلدي الخلفية الخاصة.
وهو ما يعني الكتابة PHP التعليمات البرمجية التي تعيش في URL
ويمكن تقديم هذه البيانات النموذج.
>> ثم التعليمات البرمجية الخاصة بك، كتب في PHP على الخادم،
ثم يمكن الرد على ذلك إدخال المستخدم.
مثل اسمه أو اسمها، أو على مستوى الراحة، أو النوم، ثم تفعل شيئا معها.
في هذه الحالة، أنا فقط طبع بغباء بها
كنص، وهي ليست كل ما جميلة.
ولكن هل يمكن بالتأكيد تخيل، إذا كنت تعرف HTML،
وعليك أن تعرف قريبا كيفية توليد HTML مع و الطباعة، والطباعة،
وظائف مماثلة، يمكنك بالتأكيد إنشاء صفحة على شبكة الإنترنت أجمل أن يقول:
يا ديفيد، كنت مسجل من الآن.
كنت أقل راحة طالب من ماثيوز، أليس كذلك؟
>> يمكنك فقط استخدام مجموعة كاملة من٪ سيس، أو الأقواس المعقوفة والدولار
تدوين كنت قبل لحظة، ل توليد النص الذي هو أكثر ملاءمة للمستخدمين
من هذا.
لذلك دعونا نلقي نظرة على هذا الملف واحد.
Froshim صفر نقطة PHP يشبه هذا.
عندما كنت تحميل IDE CS50، يبدو الصفر froshim من هذا القبيل.
هذا هو froshim صفر نقطة PHP.
وماذا لاحظت حول هذا الملف؟
>> الحضور: (غير مسموع)
رئيس 1: عذرا، بصوت أعلى قليلا؟
الحضور: (غير مسموع) كل شيء في HTML.
في واقع الأمر، هو، ل ما هو المثير للاهتمام حول PHP
غير أنه صمم و ذلك لأفضل
أو للأسوأ، تتداخل مع رمز HTML.
في واقع الأمر، حتى وإن كان هذا ملف، froshim صفر نقطة PHP،
لديه تعليق PHP في الجزء العلوي من ذلك، كل شيء HTML فقط.
ولكن على النقيض من ذلك، إذا كنت فتح، دعونا مثلا، سجل صفر نقطة PHP، التي
للتو تعليقا كبير في الأعلى.
هذا يبدو أيضا بشكل شبه كامل مثل HTML، إلا من أجل ماذا؟
الخط، ما، 21 تبدو غريبة بعض الشيء.
>> ولكن لاحظ أنني الدخول في وضع PHP مع قوس فتح علامة استفهام PHP.
ثم لقد حصلت على بعض الاشياء.
ثم في نهاية هذا الخط تقريبا لدي، علامة استفهام PHP.
وهذا هو ما أعنيه المختلطة.
يمكنك كتابة HTML انك نريد الخادم لبصق.
ولكن إذا كنت تريد أن تفعل شيئا اقعة في المنتصف الديناميكي من خلال صفحة،
مثل إدراج اسمي أو النوم أو مستوى الراحة،
يمكنني استخدام وظيفة مثل الطباعة ص، وهو
طباعة العودية، وهو ما يعني فقط طباعة هذا المتغير، تنسيق ذلك
ولكن تريد.
انها حقا ليست ل أغراض الإنسان، انها مجرد
من أجل التصحيح أو لأغراض التشخيص.
لذلك هذه هي الطريقة التي فعلت ذلك.
>> لو كنت بدلا من الذهاب froshims اثنين نقطة PHP، تلاحظ أن عمل هذا النموذج
لم يتم تسجيل الصفر نقطة PHP باسم old-- كان سابقتها في الواقع.
لكنها سجلت اثنين نقطة PHP.
لذلك دعونا ننظر في كيفية هذا واحد يتصرف بشكل مختلف قليلا.
إذا ذهبت إلى الإصدار الثاني.
إذا هنا، إذا أسجل مثل داود، وأقل مريحة، من النوم من ماثيوز،
تسجيل.
حتى هذا الوقت قال ذلك، ل تم تسجيلها، وليس حقا.
دعونا نرى ما فعلته هنا.
إذا نظرت في السجل اثنين نقطة PHP، وهذا له بعض مزيد من رموز PHP.
انها قليلا أكثر نظافة، على الرغم من أنه لا يزال يلتف طويل قليلا على هذا الخط.
لاحظ هنا.
I طباعة بلدي العلامة HTML، رأسي علامة، بلدي علامة العنوان، والرأس والجسم.
>> ثم أبدأ القول أشياء مثل دخول في وضع PHP.
وحتى أن العلامة، قوس مفتوح علامة استفهام PHP-- يقول PHP،
مهلا، الخادم، execute-- تفسير الاشياء التالية كما PHP
حتى ترى علامة النهاية.
وعلى الرغم من أنك قد لا تعرف أي PHP بخلاف كنت قد رأيت حتى الآن،
يمكنك النوع من القراءة كان حدسي جدا.
إذا كان اسم فارغ، أو الراحة هي فارغة، أو النوم فارغ، ماذا أفعل؟
ماذا أقول للمستخدم؟
يجب عليك توفير اسمك، الراحة، والنوم، وهكذا دواليك.
آخر، وأنا أقول أنت مسجل، أليس كذلك.
>> وأنا أقول لا حقا لأنه ليس هناك قاعدة البيانات.
أنا لا أفعل أي شيء مع البيانات.
أنا فقط رميها بعيدا لأغراض العرض التوضيحي.
الآن أنا نوع من مقتر على خط 22.
هناك المزيد من جملة هناك، ولكن علامة الدولار
تأكيد آخر هو نوع من إثارة للاهتمام.
وهذا هو ما هو لطيف حول PHP.
في PHP، لديك ما يسمى عدد قليل من المتغيرات العالمية الفائقة.
فهي نوع من أكثر أهمية من المتغيرات العالمية.
وهؤلاء، كل رسملة على هذا النحو، وتأتي مع PHP.
حتى إذا كان لديك ملقم الذي يحتوي على خادم الويب المثبتة، مثل أباتشي،
وتثبيت اللغة دعم PHP، فجأة لك
يمكن البدء في استخدام هذه السوبر المتغيرات العالمية في التعليمات البرمجية.
>> وما هو لطيف حول PHP هو أنه إذا كنت فقط
إرسال ملف الذي ينتهي في نقطة PHP، ووضعها على خادم الويب،
ثم قمت بتقديم نموذج لذلك عبر هذه العلامة العمل وعلامة النموذج،
ان سمة العمل في علامة نموذج، PHP وشبكة الإنترنت
الأرقام تماما على كيفية انتزاع كل تلك أزواج قيمة المفتاح من
من URL مثل السؤال العلامة ف يساوي القطط،
فإنه سيتم معرفة كيفية ف والقطط.
إذا قمت بتقديم صورة، أو اسم المستخدم، أو كلمة مرور لمثل الفيسبوك،
سوف PHP معرفة لك حيث كل تلك البيانات هو.
وسيسلم فقط لك مجموعة النقابي
دعا الدولار آخر علامة تسطير، أو علامة الدولار تؤكد الحصول عليها،
اعتمادا على ما إذا كنت باستخدام بيانات أو الحصول على وظيفة.
وسيكون مجرد اليد التي متغير عمومي عظمى،
بحيث إذا كنت ترغب في الحصول على اسم أن المستخدم تقدم عبر تلك الشبكة
شكل، لكم حرفيا فقط ويقول اسم المتغير العالمي عظمى، الاقتباس،
نهاية الاقتباس، الاسم.
واقتبس والراحة نهاية الاقتباس، واقتبس، النوم نهاية الاقتباس.
ونحن في طريقنا لتكون قادرة على القيام هذا وأكثر من ذلك بكثير مع PHP.
وعلى الرغم من هذا كان لمحة خاطفة في ذلك،
سنقوم الغوص في المزيد من الأسبوع المقبل.
ونحن سوف أعرض قاعدة بيانات حتى ان كنت فعلا
الذهاب الى البدء في تنفيذ based-- التجارة الإلكترونية بنفسك
مثل موقع في الوقت فقط لمدة أسبوع.
لذلك سنرى لك في المرة القادمة، و آمل أن حصلت على الرسائل النصية.
الى اللقاء.
>> [عزف الموسيقى]
>> [فتح الباب]
>> المتحدث 2: يا.
SPEAKER 3: ما الأمر؟
المتحدث 2: ماذا تفعل؟
SPEAKER 3: العمل على مجموعة المشكلة.
المتحدث 2: لطيفة.
كفك.
>> [كفك]
>> ما are-- اه، ماذا تفعلين هنا؟
SPEAKER 3: فقط شنقا.
عادت للتو من صالة الألعاب الرياضية.
أنا لا يمكن أن تساعد ولكن لاحظت عندما كنا عالية fived،
أن يكون لديك يد جميلة الخام.
هل تذهب الى صالة الالعاب الرياضية؟
>> المتحدث 2: رقم
لا.
>> SPEAKER 3: رجل، أنت تبدو كبيرة جدا.
وهو سيئ، لأن الجميع يعلم 8-الكرة هو رجل كبير في الحرم الجامعي.
كفك.
>> المتحدث 2: آه، لا.
لا، أعتقد أنا جيدة.
أعتقد أنا جيدة.