[音乐播放] 扬声器1:这是CS50和 这是七周的端部。 今天也许是我们 真的教你的语言。 我们在过去的介绍 周HTML和CSS,这两者都不 是编程语言。 事实上,即使我们没有 看几乎所有的标签 该HTML配备了几乎所有的 该CSS自带的性能, 这是一种它的HTML和CSS。 我们只是一般 开始假设你 了解总体思路 的标签和属性, 和发送页面 从客户端到服务器。 因为今天我们先来看看 另一种编程语言,PHP。 我们要做这个超级快。 我们不是要教你的PHP本身, 就像我们不向往来教你 C,本身,而是编程。 事实上,之一 本课程的目标 是不是要教你C, 或HTML,或CSS或PHP, 或任何数目的其他的 时髦的词或缩写, 而计算机科学 如何从根本上编程。 事实上,今天我们开始采取 这些培训轮子掉所有的 进一步通过一个飞 语言叫做PHP,如下所示。 以下是这门语言的样子。 事实证明,没有必要对 程序中的主要功能写 在一个叫做PHP语言。 所以这已经听起来有点简单 比C,与我们熟悉。 事实证明,如果你 要声明一个变量, 你做了几乎相同C.但 有明显的一个区别在这里 当我宣布一个字符串, 或者两个的差异。 什么样子有什么不同? 听众:美元符号。 扬声器1:是的,有美元 签署,这是我们从来没有见过的。 而缺少什么? 是吗? 听众:[听不清] 扬声器1:是啊,有没有数据类型。 所以,事实证明,PHP是我们 调用一个松散类型的语言,在这里 C的强类型。 弱类型只是意味着 有不同的数据类型, 有字符串,整数和浮点数。 但是,计算机的数字表示出来。 您人类程序员 没有弄明白。 因此,所有你需要做的 声明一个变量 美元符号,名称您 变量,然后,例如, 报价引文结束,世界你好。 嗯,这是什么 情况看起来像在PHP。 任何差异? 第 因此,原来这些是相同的。 你可能有少 分支机构或多个分支, 但是语法匝 出完全一样。 布尔表达式可以 一起订购。 布尔表达式 可相与在一起。 你还有开关。 即使您没有使用 这些,这些确实存在用C 而且他们在功能 相当于在PHP。 而事实上,在PHP他们 更厉害一点。 在C语言中,你只能比较特定的 像整数和字符数据类型, 而在PHP中,你可以实际的比较 全功能完善的字符串,而无需 担心指针等。 所以这里有一个for循环。 这仅仅是伪 代码,如果你愿意。 但在结构上是相同的C. 这里有一个while循环,伪 therefore--相同C. 这里有一个做,而loop--相同。 所以有一种 这种模式在这里,由此 还有一些其他的语法 特点我们确实要看到。 事实上,这里是一个很好的 在PHP借此方式, 如果你想要遍历 一个数组,你 不希望跳跃通过 有心理和语法箍 INT I等于0,我少 小于n,我加plus--这 只是很多烦人的语法。 你可以说多一点 流畅每个号码 作为数字,其中在这种情况下, 美元符号的数字,我假设, 就像是一个数组被叫号码。 然后,我假设数, 奇异的,将是一个变量。 什么PHP会为我做,因为我遍历 移到该循环是,在每次迭代中, 它会更新变量数 在数字的第i个元素,复数。 所以它只是处理了这一切对我来说。 没有方括号,无 美元符号,没有分号。 这只是一个简单一点。 好吧,如果你想要一个 阵列,原来你 可以做一些非常相似 C.语法是有点不同。 但在这里就是所谓的数组 美元符号数。 而且我用的,在PHP中,方 括号,事实证明。 而且我们将再次看到这些 在JavaScript--又一语言。 我只是用方括号 有一个逗号分隔的列表 的整数,在这种情况下。 但是,这给了我一个阵列。 但是,即使在PHP更加强大, 我们也有一般有哪些 所谓的关联数组。 和很多语言 有这些为好。 关于C数组的事情 是,索引 一个数组,东西你 在方括号中使用,通过该 您访问的元素,一定是什么呢? 听众:[听不清] 扬声器1:他们必须是数字或 整数,特别是从零就到了。 那么,在PHP和,事实证明 出,在其他语言中, 你可以开始有 索引是不是数字。 但他们实际上是词或 短语,使得而非 尽量记住一些东西 是,或者存储在变量i, 你其实可以用一句话说 that--你能说这样的话。 因此,美元符号报价是 变量这里命名。 这是一个有点时髦的语法 这是相关联的两个关键值 对这个变量。 具体而言,这是给我 一个数组的长度为2。 但索引不是0和1。 该指标是报价引文结束 符号和报价引文结束的价格。 而这些指标的值, 分别是FB对于Facebook 和$ 79.53,当我最后 查了代价。 这意味着什么? 嗯,这意味着, 而不是编写代码 这样,在这里我用来做什么 像美元sign--或者更确切地说,在C 我甚至不会有一个美元符号。 我会做一些 比如单引号,然后 我会做支架我得到一些 任意数字索引值。 从今天开始在PHP中,如果你 想获得一些价值, 样的,我们有更多的 语义表现力。 的说法只是一个奇特的方式,我们可以 只需要调用的东西是什么。 如果你想获得 在一些符号, 现在你从字面上做 引用引文结束符号 在方括号 这不只是数。 所以这是一个很好的便利。 这就是那种现在它。 有一束束 在PHP中的其他功能。 事实上,PHP中有 众所周知的厨房水槽。 几十,几百的功能配备 PHP--这么多的超过带着C. 而这还不打算 压倒而是帮助 你知道,我们没有 不再需要编写代码 这是那种到这里概念。 现在我们可以开始利用 远更先进的功能 像PHP语言都有。 所以我们不必担心 在内存中移动周围的事物。 我们不担心的malloc 而所有这些较低的水平, 强大的细节,你会摔跤 有,如果不与,pset5斗争, 但你可以开始 很快理所当然的。 事实上,让我们写一个超级 在PHP中简单的程序,如下所示。 我要去的头到CS50 IDE在这里,我要怎么做 是创建一个新的文件,这很简单 将被称为你好点PHP。 因此,而不是C点,它的 将被称为点的PHP。 然后在这个文件中, 我可以开始输入。 但事实是, 有一件事我必须知道 是,一般而言,任何PHP文件,需要 开始与一些特殊的语法。 类似的精神,HTML,但同样, PHP是一种编程语言,而不是 的标记语言。 因此,每一个文件,它的排序 愚蠢的样子,我得承认。 打开支架,问号,PHP。 而这仅仅是 说法语的方式, 哎,计算机这里来一些代码 写在一个叫做PHP语言。 然后在文件的最后, 你做种排序相反的。 你不写一遍PHP,你只 做问号,尖括号。 然后,任何你把里面的 这两个标签,可以这么说, 将,或者应该是,PHP代码。 因此,让我们做一些超级简单。 我要继续前进,做打印 闪避,世界你好,反斜杠N,保存。 而现在,在我的提示下,我要去 这样做,使hello--不,我要做的事情, 点斜线打招呼。 不,点斜线,HM。 因此就不同了。 事实上,这是一个关键的区别 PHP和语言如C C的差别 是所谓的编译型语言。 这是什么意思对C进行编译? 是什么寓意? 是啊。 听众:把它写进机器代码 因此它可以由计算机来运行。 扬声器1:没错。 我们必须首先把它转换成 所谓机器代码,0和1 之前,它实际上是可执行 和理解由计算机。 英特尔内部。 由计算机内部的CPU。 PHP,相反,是所谓 一种解释型语言,这 意味着你没有编译 成零和一,机器码 你,而不是把它作为源代码。 而你,而不是把它作为输入 一个程序,一个解释 别人写的 年前能理解它 一行行,一个字符一个字符。 因此,换句话说, 人类在那里写了 一个程序,将看 在一行代码行, 并找出什么 电脑应该做的, 不转换 直接向零和一。 如果它看到一个for循环因此, 这个所谓的解释器 将是一样,没事的,我应该 一遍又一遍,再做些什么。 我该怎么办? 让我看看下一行。 让我看看下一行。 它真正的逐行解释它行。 因此,要执行它,我不使用化妆。 我不使用点斜杠在这种情况下。 我不是做PHP的,这是 的一个程序,也称为名称 一个解释,那就是 预装CS50 IDE, 现在我需要通过一个 命令行参数,这 是的很简单的名字 文件我想诠释。 或者更随便,我想运行。 如果我敲回车,在那里,我们有它。 你好,世界。 现在事实证明,我 用过的打印清晰度故意 从C弥合我们的PHP。 大多数PHP程序员,你会看到, 甚至没有理会使用打印清晰度。 他们只是用一个调用的函数 打印,这Ç没有。 所以,如果我重新运行,现在,它实际上 行为功能上是相同。 我不能用百分比小号 和百分比i和等等, 但也有其他的方法 在这样做的PHP。 但是这仅仅是对 说语法, 比一些奇怪的事情了其他 顶部和一些奇怪的字符下降 在底部,该概念现在的 在这个其他语言编程 将要完全相同。 事实上,让我们做另外一个例子。 所以我要继续前进 并关闭该文件。 让我再创建一个 我会打电话给条件1点PHP。 因此,没有零,因为我做了什么 是我回头一看,几个星期前, 我们有一个名为 条件1点C.什么 我所做的就是将它转换我 头,并在这里对纸, 并很快在球场上的 网站,一行行到PHP。 所以在C版本中,我们做了一些 像字符串s得到得到的字符串。 所以这是一个有点不同 要做到这一点在PHP。 相反,我只是去 这样做,或者说,我 可能做INT n得到得到 整型,在前面这个例子。 而不是说那么,我该怎么办ñ 被读取,行,我想一个整数, 请。 所以,这只是我的提示。 所以,事实证明,以及 我只知道这个 从看过或见过的功能 之前,阅读功能在PHP线 需要一个参数是一个提示 对于人,其人生目的 是读一行文本 他或她在类型。 然后将其存储了 文成变量n。 现在,我可能想要做的事 像我一样星期前,像周 其中一个班的。 如果n大于 零,那么,我会 借用刚才我们看到的语法, 打印闪避,你挑一个正数, 反斜线ñ。 否则,如果n等于等于零,我 要继续前进,并说,打印清晰度, 你选择了零反斜杠ñ。 否则,这里的情况应该 当然可以,打印清晰度, 你选择了一个负数。 我们当然可以实现 这件事情的逻辑 在一堆不同 的方式,但这里的要点 是语法, 几乎没有任何东西是新的。 这只是美元符号和 一个新的功能和读线。 但是从根本上,有什么新 现在我解释这一点。 我把它当作输入 到其他程序。 所以,如果我想,如果要运行它, 我没有犯任何错误, 我要去的运行PHP, 条件1点PHP,回车, 我会在50号输入, 让我们假设现在它的作品。 因为逻辑是 同样的东西,一个星期。 好了,所以这是很 给人留下深刻印象,对不对? 我们可以在任何这样做 语言的数量。 让我们做一些事情的方式更强大。 让我们来完成习题集五位。 所以,我要继续前进,做到这一点。 我要创建一个文件 所谓字典点PHP, 和倾斜的,你可能会 要抢下来很多的笔记, 票据只会帮助 你如果你被允许 实现问题在PHP中设置五位。 但是,我们将看到如何迅速,现在我们 可以实现同样的问题集。 因此,在字典点PHP,我会 假定已经有 在世界上一个名为的拼写。 事实上,我提前做了这个, 我们不会通过这条线走 按行,但如果你 好奇后来真想 环绕在你的心 C和PHP之间的差异, 从字面上比较这文件, 拼写检查,从今天的源代码 我们稍后将发布 今天,对p将 5拼写检查C点,我们给你, 和它的几乎相同的线,由线。 这里也有一些更多的美元符号。 一对夫妇功能 有一点不同。 但它是一个很好的方式, 排序的看到如何 你翻译一种语言到另一种。 这几乎相同的行线。 但我会假设, 存在,就是我要在这里做 是试图炸毁你的 通过重新实现介意 问题的全部设置五路 比你快一直在做迄今。 因此,举例来说,我会第一 声明呼吁大小全局变量, 并设置它等于零。 现在,没有太多的积蓄。 可能你实现 大小几乎相同, 或暗示暗示将于今晚或明天, 只使用一个叫做全局变量 大小,并且将其设置为零。 这不是一个特别 惊人的扰流板。 那么,什么是你的数据结构 选择,你们谁也跳入水中 并读取规格,什么数据结构 有你们中的大多数已经使用? 哈希表或尝试,也许 一些变体。 这样至少执行哈希表, 是种了很多行代码, 对? 而且不是所有的人都可能是 官能此时的一周中, 但是这很好。 因为在PHP中,如果我 想要一个哈希表,完成。 对? 所以,我已经该变量 刚刚宣布显然是 所谓的美元符号表, 每出台之前。 但我真的只是想,在 在一天结束时,一个阵列。 但不是一个数字索引 阵列,因为那就像2周 的东西,当我们谈到数组。 我想要一个哈希表。 但是一个哈希表是真的 的说法只是一种具体的方式, 你想一个关联数组。 你想成为能够 准键与值。 键与值。 什么是一本字典,真的吗? 那么它是一个整体一串钥匙。 话像苹果,梨,香蕉, 而所有这些英语单词 我们交给你。 而价值观,你是有效的 插入到你的字典 要么是真的,还是没有,假的。 换句话说,你要插入 一大堆的键值对, 苹果,真的,梨,真实,香蕉,真实。 所以,当您检索或看 在您的哈希表的数据 与你的检查功能,你 要么得到一个答案, 是的,我发现它在我的复杂 哈希表,或者没有,它不存在, 所以你返回false。 因此,要做到这一点,我需要的是数据 像我以前的结构建议。 我只需要能够 要的话联系起来 像,报价引文结束,符号, 用一个值一样,真实的。 因此,有我的哈希表。 让我们实际使用它。 因此,有一些功能 我需要实现。 我要继续前进,咬 关闭一个函数调用的大小。 它不带任何参数。 我没有打扰 这个词的,无效的,在PHP。 我只是要回的大小。 而作为一个不谈,PHP有 这minorly恼人的细节, 其中,如果事情是全球性的,你要 在告诉你正在使用的功能 这,哎,这是一个全局变量。 因此,小的愚蠢,但你 有仍然做到这一点。 那么,关于负荷? 我要去实现 一个函数调用的负载 这需要在字典中的名称, 就像在问题设置五位。 而在我开始之前, 请注意,我没有 打字已完全一样的东西。 有什么明显的不同在PHP约 你如何定义一个函数对C? 是啊。 听众:[听不清] 喇叭1:没有返回类型。 而事实上,这样的话,PHP 只要它是松散类型, 也是在这个意义上一点不马虎。 你不指定作为编程 这是什么函数返回。 你将不得不实际上看起来 在代码中找出答案。 或者阅读评论 或文档中。 因此长处和的利弊吧 这类决定。 但是,我不得不说 关键字,功能。 而当我们学习 JavaScript的在几个星期 我们将看到同样的事情 再次,但它同样的想法。 该函数的名称,它的参数 或参数或缺乏,现在 这里是执行。 所以我要去只是削减一些角落 是戏剧性的只是一瞬间。 但我要继续前进,并说这一点。 这就是我可以加载 一个文件到一个数组。 有一个在PHP函数调用的文件。 你把它的文件的名称。 它递给你回一个数组,里面 这是每一行的文件。 从零个,一个,上向上 到n减去1行。 就是这样,对吗? 有没有F读。 有没有F GET秒。 有没有百分之秒。 有没有头痛。 有没有的feof。 所有的东西与 你一直在摔跤也许, 与对置四,五,消失。 所以,我刚才读的那些行成 该文件,然后你知道吗? 如果我想遍历这些话, 我能做的,每个行的行。 请记住,这是种聪明 迭代的一个数组,索引的方式 由指数,并在每次迭代主叫 当前行,美元符号线。 而且在这里我会去 说表,支架,线,得到真实的。 换句话说,这就是我 插入到PHP中我的哈希表。 我说,美元符号表, 是我的关联数组,这是 空每个代码向上线之上。 然后我索引到它 不是,使用号码, 但是从字面上使用 关键字,我在乎。 也许这是苹果或梨 或香蕉也好, 但具体我索引 进入它就像我刚才提出的。 我取的名字我 关联数组,然后我 使用报价引文结束在 方括号中有一个字符串, 代替实际数目。 所以,就是这样。 负载功能完成。 一旦这个循环迭代,我已经把 万事成哈希表。 现在小的免责声明,有一个 两件事情我也需要修复。 和版本,我会在网上发布 将所有的细微差别, 但它大多只是一些将要 错误检查和一些小的调整。 但是,这确实是它的要点。 如果我现在想实现 调用的函数 检查,这需要一个 字作为其参数, 怎么可能我去这样做? 好吧,我只是会说,如果 我的表里面,在位置的话, 如果已设置。 因此,如果有is-- 其实,你知道吗? 我要做到这一点在 有些伪代码。 但这个想法是一样的。 如果等于true,返回true。 好吧。 那种Else--你能看到 这是going--返回false。 完成。 检查完成。 相当不错的,对不对? 所以,这是什么真正的意思吗? 这也太,我切一些角落。 看版上线 对于所有的细微细微差别的。 但是,这是它的要点。 指数到您的 关联数组,又名 哈希表,看看是否有一个值 还有,如果它设置为true,如果是的话, 返回true。 因此,我们削成下降 所有的复杂性。 所以,那种心灵的吹了吧? 我不会打扰卸载完成它, 因为在fa​​ct--哦,你知道吗? 是啊,让我们与卸载完成它。 卸载在哈希表看起来 像功能卸载,返回。 确定这样的卸载。 因为没有什么 卸载,对不对? 有没有malloc的。 我没有明确要求 操作系统的任何事情。 我刚开始使用的变量。 所以,这也是的一种表现 更高层次的语言特点。 如此反复,大多数这个词 我们一直在处理这儿 与C超低水平。 你可以看到计算机的内存。 你可以触摸任何你 希望在您的计算机的RAM, 是好还是坏。 在这里,我们将 放弃权力。 但是,我的上帝,看看如何 更少的代码我写的。 事实上,如果我不说话 并讨论了我的打字, 我们已经进行 这个例子五分钟前。 那么什么是价格被支付? 那么让我们一起来看看。 让我们一起来看看。 我要继续前进并运行CS50。 让我先进入 今天的例子, 我像以前一样有文本的目录。 我要运行的解决方案, 它与问题设置5名为 拼写,这是在CS50的帐户。 而我要的东西运行 大像国王詹姆斯圣经, 只是让我们真正把 员工的解决方案测试。 现在有时互联网的一个 慢一点,快一点, 可能需要一段时间来滚动。 但它总共0.56秒花 拼写检查国王詹姆斯 用圣经的工作人员解决方案。 因此,相当不错。 你的可能要慢得多, 而这完全罚款。 但它是正确的在这里。 所以这是工作人员的解决方案。 如果我进去收拾PHP版本。 而我会做一个小 像烘焙展的事情。 我们将采取我写的代码 此前,所以这是完全正确的。 因为我写的代码是不会 是完全正确的刚才。 但是,如果我运行PHP版本, 我有什么,今天放弃了? 我花了五分钟 实施P设定五,我要求。 我已付出什么样的代价? 是啊。 听众:速度。 扬声器1:速度。 什么意思? 听众:这将需要更长的时间。 扬声器1:所有权利。 让我们来看看。 这将需要更长的时间, 不写,但要运行它。 是啊。 因此,让我们试试这个。 所以在这里我要继续前进,做 PHP拼写的,并且因为该文件的 所谓的拼写。 所以我没有运行 字典,召回, 我跑叫拼写检查程序。 我要通过在同一 文件中,国王詹姆斯的五分之一。 它飞​​过。 这可能仅仅是网速, 所以不要过度解读成。 但它确实感觉不再是肯定的。 1.26秒。 现在,仍然是相当 该死的快,不是吗? 这感觉就像唯一的理由 更像三个或四个或五个 秒,这只是因为 互联网是正在缓慢。 花费的计算机时间为1.26 秒,相比之下,我认为0.56。 这样的两倍以上的速度慢。 现在,这还是相当不错的 速度快,但它是一个体现 ,果然,那具体价格。 因为我们解释 在由行代码行, 并且该程序PHP正在读我的 代码从上到下,从左到右, 它有做多思路。 它有一种转换 它本身内部 到相应的机 在飞行中的代码,可以这么说, 即使力学 有一点不同。 而不是只供给到对 英特尔CPU的原始零和一 它理解本身。 那么绝对,相传, 我们已经付出了代价。 和代码编写的语言 PHP之类往往要慢一些。 但是,我的上帝。 所以现在当我拼写检查我 文件,我花了一个额外的0.7 秒左右VS 20小时以实现 更快的拼写检查,对吧? 这是怎样的一个权衡的。 如果你是刚刚启动P 置5,可能不会20小时。 可能远高于更少。 但是,这是一个权衡,真的。 如果你是在真正的大运行的代码 数据集,或者在更老的硬件, 这些种的差异 当然可以积少成多。 如有任何问题迄今? 是啊。 听众:[听不清] 扬声器1:对不起,能 你说这一次? 听众:[听不清] 扬声器1:你放弃自己的时间。 好了,所以是。 您节省时间 不必编译它, 如果这就是你在问什么。 事实上,在CS50, 大多数的节目, 尽管他们可能需要一段时间 写,他们是比较短的。 几十个,几百行代码, 所以他们编译很快。 但是当你开始 写一些大一点的程序, 就像如果你是微软或者你 谷歌和写作真正的大计划 在C或C ++或类似方式进行编译 语言,可能需要数秒, 甚至几分钟或更长的时间,以 编译数百万行代码。 还有一点,就是 差别是要增加。 而事实上,一旦我们 今天的过渡,当天 今天,以网络编程 使用PHP,你 会发现它只是这么多 更愉快编写代码 如果你没有做这些愚蠢的 样变到终端的步骤 窗口中,键入make你好,重 运行它,重新加载窗口。 只是这么多愚蠢 机械步骤 刚刚获得这样做的方式 有趣的,好玩的工作。 事实上,我们扔掉这些用PHP。 我们可以互动 与它更迅速。 是啊。 听众:[听不清] 扬声器1:当然。 我能澄清什么 装置将被解释? 当您编译语言 像C,它的股价下跌 因为我们机器说: 码,零和一。 而Intel决定年前 零和一的某些模式 代表此外,或减法, 或打印,或其它基本操作。 在解释型语言的世界 如PHP或JavaScript,或者Python, 或Ruby,或串 其他人,而不是一个人 写了一本 interpreter--在这种情况下, 它也被称为PHP,等同于 在language--的名字,基本上 有一个大循环中它的迭代 在所有代码的行 我给它的输入,像招呼 点PHP,或字典点PHP。 然后你可以把他们的大的 环路有很多的条件。 而这些条件说,如果 人写的关键字, 开始做他或她的 代码连连。 或者,如果该人具有 写的代码行, 如果只执行自己 下一行条件。 因此,它是真正喜欢解释 它在一个人的感觉,线 由线,那只是时间问题。 这需要开销。 所以这是一个price-- 良好的问题 - 我们付出。 因此,让我们做的是另演示 这是一个有点戏剧性。 还有就是,我会说,一个大概这在 可怕的失败的概率为90%, 但你会惊奇地发现 用10%的概率。 所以每年我们尝试 要做到这一点,因此我们 试着写一个程序,经过 问题设置为零,用于表示已 提交你的电话号码和一个 许多其他的人口统计信息, 我们编程 送你一条短信。 然后,每个人的手机 开始发出蜂鸣声或振动, 它只是令人惊讶的,因为 好了,看看电脑能做到。 这很少正常工作 看来,在很大程度上 因为我通常得到列入黑名单 通过Gmail或其他服务 对于真正想这样做的规模。 但有趣的是太多,因为我们 今天没有在座的每一位, 有趣的是我们最后一次 两年前试过, 我想,我写了一个程序 是坐在一个循环迭代 在所有的学生在课堂上, 和他们每个的文本消息的, 它是这样说, 为什么不是你的演讲? 爱,CS50机器人。 你不知道有多少歉意 而那种痛苦的电子邮​​件 我在从接收的响应 ñ零下100人谁不在这里 那天。 而更有趣,更可耻story-- 你知道,我们把它放在那里。 它已经在的视频在几年前。 所以,你很快就会看到我 其中写一个for循环, 这是很容易写的,一个错误 for循环,使得在第一时间 通过循环,则 发送一个短信。 通过循环我第二次 早该送多了一个短信, 然后多一个文本 消息,和一个更多。 但事实证明,如果你犯了一个错字 在编程时,有时你 可以编写发送一个程序 短信,然后两条短信, 然后3条短信给大家 谁是已经收到了一条短信。 如你所知,做什么, 加的东西,再加上一些东西, 加的东西,是很多大O 短信,或N的平方, 或$ 0.10短信,$ 20,000。 值得庆幸的是我打控制-C在此之前, 事情发生了,但我没有欠至少一 你的前任为$ 20的 200一些奇怪的文字消息, 不仅去了他的电话,但 同时它像一个老翻盖手机 所以喜欢排挤出他 每个内存等个人文本 消息他实际上得到。 因此,我们有一个目标 今天,不要那样做。 也许打开飞行模式。 好吧。 因此,让我们进入一个 计划在这里callled-- 我会打电话给文本点PHP。 而在前进,我有两个文件在这里。 我做的只是工作人员的文件,这是有 所有员工的信息,所有的名字 从课程的网站。 然后现在我只是把 一些假号码555-1212。 因此,这些不会真的去任何地方。 但是请注意这个CSV文件里面, 我们之前谈到简要 在文件IO的上下文中。 什么是CSV文件? 逗号分隔的变量。 这是一种像极 轻量级的数据库,如果你愿意。 还有一种类四列 在这个文件中,且有锯齿, 但逗号本质 代表在该文件中的列。 第一列是对TF或CA的名称。 第二列是他们的姓氏。 第三列是他们的电话号码。 第四列显然is-- 第四列显然是什么呢? 好了,这是他们的运营商。 因此,Verizon公司,或冲刺,或什么不是。 如果我前面misspoke,CSV。 逗号分隔值是CSV在这里。 因此,我可以做这个? 嗯,这只是一个大的文本文件, 并且它是一种长的,对不对? 像这样的打算 是种讨厌。 而事实证明,但是,如果我 要发送一条短信到,让我们 亚历克斯说这里。 让我进入我的浏览器 和退出全屏模式 只是这样我就可以来回切换。 事实证明,让我们来看看,如果我去的 在这里,并登录到Gmail中,所有的权利。 别看这部分。 只要我能看到。 当然livestream可以 仍然可以看到我在做什么。 好吧。 因此,这里仅仅是Gmail的使用 约翰·哈佛的账户。 所以,如果我想发送 短信亚历克斯, 我当然可以撰写邮件。 而事实证明,我已经 与亚历克斯测试之前,在这里, 这样你就可以添加特定域 名人们的电话号码, 因为世界上存在 东西叫做短信电子邮件网关。 这是说,所有的一个奇特的方式 我们谁拥有那款手机 当然有电话号码, 有可能是你的运营商, 一定后缀像在 Vtext.com为Verizon短信 点com,你可以添加到您的 自己的个人电话号码,然后 您或朋友,或者你的父母会 文字你在那个特定的地址。 和Verizon拥有一台服务器,电子邮件 服务器,即在收到这封邮件, 着眼于数字部分,然后 采用任何特殊行业的魔法 他们必须真正发送出去了 电波您的特定细胞 手机。 现在,这是很好的,因为我不知道 真的知道如何发送短信 或者写的代码,但 我的手机, 你可能做到这些的 最终的项目,但现在所有的 我已经是我的笔记本电脑在这里。 所以我想遍历该CSV 文件,线,由线,由线,由线, 抓住每一个员工的电话号码, 和它们的载体和编程, 串联,也就是连接手机 用适当的域名数 然后发送电子邮件。 所以这是一个很大的步骤。 祝你好运这样做,在C. 这是一种情况噩梦 打开文件,读它 线,由线,由线,为你 看到,也可以很快看到 有问题的设置五,如果不 问题设4,然后 动态地串联 两个字符串,因为在C, 采取两个字符串,并结合他们, 你是什​​么微创 最需要做的可能? 需要声明更多的内存,对不对? 而问,malloc的,我可以有更多的内存? 因此,我可以把一半的 这里,一半的在这里。 这只是这么多的步骤。 而到那个时候,你已经失去了 在愚蠢的小演示的兴趣 在这里你使大家的手机蜂鸣声。 让我们做这样的PHP 风格,因此我们只 开始使用更多的厨房水槽。 而天马行空 基本上是相同的, 但我们也不必太担心 很多关于更低的水平。 所以,让我们来看看我怎么可能 去这样做。 而只是让我不 重复过去的错误, 我在这里写一些笔记自己。 而让我们看看我能走我们 通过一些基本步骤, 然后换时间的缘故,我们将 也许是切到最后一些弯道。 我要继续前进,做开放 支架PHP来启动该文件。 而且我要继续前进,做到这一点。 文件句柄,你会 很快就会看到,其实 调用名为f开功能。 请记住这将打开一个文件。 而报价,引文结束, R代表什么,再? 只要打开它进行读取。 现在,在对p设置,你这样做。 和处理可以是任何东西, 富,酒吧,BAS,任何变量名。 但一般的计算机 科学家称之为一个打开的文件, 给你一个文件句柄, 一些守住这么说。 我只是打算做 一些错误检查。 因此,如果手柄是假的,就像 在C,我会做这样的事, 无法打开文件,反斜杠ñ。 然后,我只是去 继续前进并退出。 而事实证明,在PHP中, 我不是一个函数内部。 有没有主要的功能在这里。 所以,我不回,本身。 我退出。 这是本质上是一回事。 而我离开一个Y可能。 一个仅仅意味着某种类型的错误。 这是不为零,所以这是一个错误。 好吧,如果我下来,现在这里 在我的节目,我已经打开了该文件。 我要继续前进,并宣布 叫地址的数组, 而在C中我会知道 提前数组的大小,对不对? 或者,我需要声明这个 是一个指针,然后使用malloc。 然后我每次读 通过在文件中的另一行, 我将需要对malloc 更多的内存,malloc的内存。 这是在颈部疼痛。 而幸运的是,PHP和Ruby, 和Python和JavaScript,它们 会增加你的阵列 自动为您。 没有更多的malloc。 没有更多的内存管理。 笔记本计算机在处理这件事。 但价格你付出代价。 这是一个有点慢。 而对于这样的程序 我们不会注意到。 我们将发送100条短信。 举例来说不会感觉它。 这真的只是开始 不管你选择的语言 当您的数据或程序 得到真的,真的相当大的, 如将是这种情况更是这样 我们基于Web的东西。 但现在,让我们奋进。 虽然它原来有一个 在C函数所谓的F获得CSV。 文件拿到CSV,采用一个 文件句柄作为参数, 并前进然后,行,由 行,由行,读成一排。 所以它只是读取一行 从该文件的文本。 但是,什么是好的关于这个功能, 它不只是递给我了一行字。 它看起来对那些逗号, 并分析了线。 并解析行的意思分裂 它在这方面的某些值。 换句话说,美元符号 行是一个变量这是 要给我一堆指标。 这将是对 在我的CSV第一列。 这将是第二 列,这将是第三次, 这将是第四次。 由于召回和Excel的不 配合我们最后一次这样做, 但如果我下载的工作人员点CSV。 哎呦,不要重命名。 如果我下载的工作人员点 CSV,并尝试打开它, 我已经registered--哦,我 因为上次没有更新Excel中。 你会看到,工作人员点 CSV,我有四列。 所以,当我阅读 对于艾比第一排位置, 美元符号0行是艾比, 美元符号排的是里昂, 美元符号排二是她的号码, 然后她的电话的运营商。 所以这就是所有。 这是很好的,因为我 不必现在找出 其中,所有这些逗号实际上是。 所以,我要继续前进, 做到这一点,因为定义, 我会说,她的名字是 行支架零的承诺。 而且我要grab--和 其实,你知道吗? 我不会担心 她的名字,在这种情况下。 我要保持它的简单。 我会做她的号码是 行支架二,我想。 而她的载体在哪里? 连续三年,一个比。 所以没有什么新的存在。 这只是零的索引到一个数组。 而现在,我要做到以下几点。 如果承运人等于等于AT&T-- 我只是有一个loop-- 我想创建一个电子邮件 地址看起来是这样的。 这将是617-555-1212 在,它是什么,text.ATT.net, 就是我想做的事情。 那么,如何做到这一点? 我要做到以下几点。 她的地址将是她的号码, 现在,让我继续前进,做到这一点。 这是一些时髦的语法。 我所能做的百分比把戏, 但我可以真正地做到这一点。 因此,这是一个PHP的事情,但 让我们来看看我在做什么。 美元签下地址 左,只是一个变量。 给我一个变量。 我没有指定类型。 PHP会看着办吧。 在右手侧, 什么是数据类型 在这整个事情 右手边? 看起来像一个字符串, 因为有双 报价在最左边和最右边。 现在有在这里一些时髦的新语法。 还有的花括号, 美元符号数。 不过,要猜测那是什么语法 大概告诉PHP为我做? 是啊。 只需插入值出现。 因此,没有百分之秒。 我们可以使用打印楼或s 打印F或类似的东西, 但是PHP和大量的 更高层次的语言, 你会看到,你可以 做同样的事情在功能上,也许 六种不同的方式。 因此它开始成为 设计或风格的问题。 所以,这只是一个神秘的寻找方法 的说法,给我一个电子邮件地址, 但是插件中的数目 这些大括号之间。 而且大括号不会 最终在最后地址。 现在我们可以跳过一些 这些线路时间的缘故。 因此,如果在载体等于 等于verHorizo​​n--哎呦, Verizon--我想要做的事 非常相似的,其中的地址获取, 报价,引文结束,数以text.ATT.net。 然后,我可以做同样的 为载流子的其余部分的事情。 不过,我只是做点,点,点了吧。 现在让我们假设 我想补充阵,推。 我想添加到 阵列,称为地址。 这个地址,你这是怎么 添加的东西在PHP中的数组。 你并不需要做的malloc。 你不必调整数组。 你刚才说的阵列,推动。 你怎么想push--什么阵 你要推的东西上? 地址。 要推到地址是什么? 地址。 而事实上,如果你 真的要聪明一点, 一些语法糖 为此,可以这么说, 这只是意味着你怎么能做到这一点的 越漂亮的方式,将做到这一点。 这也有越来越多的影响 地址数组的大小之一, 然后扑通额外 电子邮件地址进去。 是啊。 听众:[听不清] 扬声器1:上一个错字 其他if--哦,载体。 没关系。 它也不会喜欢我的失败 实施这一计划的一部分, 稍后的。 不过谢谢你的追赶。 还有一个错误。 谢谢。 我们希望这是Vtext.com。 是。 好吧。 那么,这给我们? 我们已经写打开文件的代码。 我们有一个循环迭代 在文件中的行。 我们有增加的代码我 阵,一个在一时间,正确地 格式的电子邮件地址。 因此,所有真正的仍然是送 一个电子邮件给这些人。 所以,我已经先行一步,并 准备好自己如下。 我打算在这里做is--,让我们 继续前进,跳到一些实际的代码, 它看起来像这样。 因此,这里的预焙 版本我前面写的。 并注意我完成 实施冲刺。 我完成了实施T-Mobile公司。 我完成了实施维珍移动。 我会提前道歉。 有几个运营商的 一些学生在课堂上有 我没有打扰枚举 在if条件在这里。 所以,不是所有的文本都将熄灭。 但是让我们看看还有什么我需要做的。 我关闭文件,只需 像P设定四人。 这是新的语法。 我们会看到一个小 这一点随着时间的推移, 尤其是与对置七,八。 但是,这是语法创建 一种特殊类型的结构。 原来,有一个库, 自带PHP,称为PHP的邮件。 其在生活中的目的是 编程方式发送电子邮件。 它的代码别人写的 使得它更容易为我们发送电子邮件, 所以我们没有保持 来回到Gmail, 并粘贴在人们的电子邮件地址。 有一大堆线在这里 那说实话,我只是种复制 并粘贴在文档。 而事实上,如果你 好奇,我将所有 文件的网址 在代码中,我们将在以后发布。 并注意中 的事情我做 是的,我要告诉这个库, 使用Gmail的服务器,对不对? SMTP我们短暂交谈了解我们的时候 是在耶鲁大学关于是简单的邮件 传输协议。 这是协议 用于发送邮件的服务器, 和that's--的Gmail拥有其中的一个。 端口,这是TCP端口号。 这是很好,如果你 还没有看到587之前。 只是知道,从文档。 这是我的用户名。 我将使用CF50机器人。 而就在那一刻,我只是要 输入机器人的实际密码。 然后到这里,发现剩下。 我从地址设为我 在CS50.net进行BOT。 我想我不会后悔发送 短信800人的 说,想你,爱CS50机器人,也许 对于那些谁今天来不了了。 然后在第76行,我该怎么办? 这种看起来像C的所以对我 等于0,N equals--现在算上是新的。 事实证明,如果你想获得 事情在一个阵列的数量, 你不必再记住它。 你可以只问 函数调用次数, 它会告诉你有多少 地址是在该阵列。 然后,我要补充 地址的电子邮件。 我知道这个来自 使用的文档。 有一个附加地址的功能。 现在发现有 是一块语法。 我们以前见过这个 在C类似的精神。 你可以认为美元符号 邮件作为一个变量,它是。 但它的内部结构 这不仅属性, 变量,如果你愿意。 但事实证明,在PHP中,这 是一个面向对象的编程 语言,像Java如果你把APCS。 美元符号的邮件,如果你想用于: 它也有功能在它的内部, 或方法。 因此,这是说 特殊的PHP邮件 库,如果我有一个变量物, 如果我要调用一个函数, 带有该库, 对于今天的目的, 只知道你使用的箭头符号。 有没有点符号。 这只是箭头。 但是,这不是一个指针。 这只是从C的语法借来的。 于是呼里面添加地址 这个库的对象或变量。 好吧。 这就是神奇的线。 这就是我如何发送电子邮件。 这是开放的等效 Gmail的,打字出来,并击中发送。 但它会代替发 通过电子邮件发送到这个地址,这身搭配, 从CS50机器人。 现在重点线。 这条线是缺席像2011 当我想到我上次尝试这个。 当然,这条线出现, 清除地址。 因此,从逻辑上讲,如果我 不清除地址 每次迭代后,第一 电子邮件或短信去爱丽丝, 第二次去 Alice和Bob,第三 去Alice和Bob和Charlie, 因此非常昂贵的错误 我做了一年。 所以,让我们来看看。 有什么问题 之前,我们向您发送的所有文字 有10%的概率消息? 任何问题? 好吧。 让我走在这里的变化 密码是什么应该工作, 将有可能获得通过的Gmail列入黑名单。 因此,他们可能不会都去 出来,因为他们可能 不喜欢我们送800电子邮件 在fo​​r循环中的一次。 因为这不是 特别是人的行为。 哦,我要改变一件事。 在最顶端,我要去sent-- 更改文件给学生点CSV。 我不会开这一点,但是这是一个 相同的CSV文件,没有员工100人, 但800名学生,刚 来自哈佛,耶鲁,因为 有月休会这个星期。 它似乎是那种一个混蛋的事 做文字所有的人,为什么 他们不是在度假类。 没关系。 只是哈佛的学生 今天该文件的内部。 现在,让我们回到 我的终端窗口。 我有点紧张。 行,所以现在我要进入 目录,和PHP文本点PHP。 如何约一勇敢的志愿者? 所以,我不希望这在我身上。 好了,上来吧。 你叫什么名字? MAYA:玛雅。 扬声器1:玛雅。 上来吧,玛雅。 好吧。 让我们来看看,如果这个工程。 我把我自己的电子邮件地址,在 file--文件在我自己的电话号码, 让希望我会得到一个为好。 很高兴见到你。 MAYA:同样。 扬声器1:所以你需要做的就是 按回车键发送800条短信, 如果我没有搞砸。 美观大方。 可能需要一段时间,统计学, 直到我们得到一个电子邮件addr​​ess-- 一个短信说的 在房间里现在。 让我们流连忘返,看看。 听众:[呼啸] 扬声器1:哦,是的。 听众:哦,疑难杂症。 扬声器1:For循环are--这 是不是因为PHP慢。 这是缓慢的,因为Gmail的 节流是美国,而不是 让我们比派遣更多 像每秒一个电子邮件。 什么? 这是一个很难的事情对我来说,测试在 家里只有我和我一个电话,就这样。 那是希望的机器人? 是吗? 没有? 说是的。 没有? 这是从一个朋友? 尴尬。 好。 很肯定它的工作虽然。 嗯哦。 他们black--哦,等一下。 哦,你知道吗? 稍等一会儿。 只有Maya和我 - 米娅,是吗? MAYA:玛雅。 扬声器1:玛雅,要 知道我做错了什么在这里。 哦,等一下。 我想我只是送100 短信555-1212。 支持。 我不能赢得任何一年。 好。 玛雅? 修复了后期制作。 该死! 从地址之后。 OK,支持。 抱歉。 这是痛苦的,每年。 OK,一个瞬间。 这是好事。 我不是要做到这一点。 打印地址。 OK,支持。 打印地址,支架我。 是的,我喜欢这样。 美元sign--好吧,我会解释什么,我 在做了一会儿,我已经运行此之后。 每年。 OK,我们开始吧。 我有just--,我不希望 展现每个人的电话号码, 但是玛雅人可以确认 与点头, 她认为每个人的 在类的电话号码 我要去复制到 一个名为Gmail中。 如果在Gmail中,有什么事我们想说的? 想你。 Love--那不是我。 我还没有打送呢。 因此,让我们继续前进,做 这一点,如果我可以进行放大。 好。 所以我使用了一个名为Gmail的,现在的程序。 如果玛雅人,你想 单击发送按钮, 我们将模拟什么 代码应该做的。 什么? [BEEPS] 听众:是的。 扬声器1:是? 救赎? 听众:是的。 扬声器1:小姐你。 而我要送出去休息。 我送出了一半,因为我没想到 Gmail的将让那些经历。 所以只记得,就在今天 你知道我可以使用Gmail。 这是可怕的。 一个大的掌声玛雅。 谢谢。 好吧,就这样。 什么 [BEEPS] 我们得到了几个声,是吗? 好吧。 现在,我要得到700真 不幸的电子邮件从同学回来。 所以,至少我们会看到 如果这是值得的。 那么问题出在哪里? 我会想出了什么 事后错了, 但只是看多么容易 它是做在PHP。 那么,我们能不能​​做到,现在 我们有这个表现的PHP。 这was--这是可怕的。 好吧。 所以这是我应该出去了。 这是我今天早上测试我的 手机,我的手机的实际截图。 但是,现在让我们来看看为什么 我们实际上引入 所有这些东西摆在首位。 所以目标不是 写这些程序 写在命令行,对吧? 所以我写了一个简单 你好程序,我写的 一个小程序,它条件语句, 和使用的读取线等等。 而从理论上讲,我只是写 一个程序发送出去 800条短信,给予或采取800。 并且该程序是所有 还是在命令行中运行。 这当然是 没有网络,对不对? 现在的目标是开始使用 什么我要求是一个更容易使用 语言,敢说更 强大的语言来讲 的功能 随之而来,开始 编写生成网页代码。 所以,最后一次和最后一周, 我们谈到了HTTP和HTML。 什么是好的关于HTML 是,它只是单纯的文字。 而文字是肯定 东西,你可以 按字面调用打印打印 f函数,或打印功能。 事实上,这就是PHP是 现在要允许我们这样做。 所以这些例子中,我们 在今天的源代码, 除了一些代码 我把那里刚才, 我们有这样的实例程序。 Froshims,或新生 校内体育活动,竟是 第课外活动之一 我参与与年前。 而我和我的室友,与 一些其他的孩子在校园里, 用于运行froshims程序。 我收到我的短信了。 现在,所以我们,早在一天,所以这 一项是1996年左右,有一个互联网, 但没有process--有 没有网站froshims。 所以,如果你想报名参加 足球或排球也好, 您填写这件事 称为一张纸, 你会穿过哈佛走 院子里,你会滑动 到邮件插槽监考官,谁 在威格尔斯沃,宿舍之一。 这是你注册的。 他或她会再 撰写一封电子邮件给您 手动,很像我 只是在这里做与Maya, 然后你会得到证实 为已被注册。 因此,这就像低 挂果树,可以这么说。 这是一种愚蠢的 我们使用纸本。 我希望我们能 只是去一个网站上, 或有新生去一个 网站,注册为体育, 而只是自动完成很多东西 通过把他们的名字和电子邮件 等等到数据库中。 而事实上,在第一个版本 该网站,使用超级难看的HTML, 可能看起来是这样的。 它实际上是具有讽刺意味,更 尴尬的看着比这回 然后。 但我用的编程语言。 而不是PHP,而是叫Perl中, 这是一个较旧的语言, 但在精神上非常相似。 而我只是完全 教给自己。 我花了一段时间来弄明白, 问很多朋友的问题。 但是想法有 是完全一样的。 因为什么PHP真的设计 对于未在命令行的东西 我们只是打了, 但对于Web编程。 这真是绑在它的功能 设置为Web,如下。 这是froshims。 如果我想 以这种形式注册, 这是相当难看, 当然,还让我继续前进 并且是一个不太舒服的学生, 和任何运动的马修斯, 点击注册。 我想要的是能够做的就是 从表单提交的信息, 没有谷歌的服务器一样 我们做了最后一次,完全 通过使用他们的后端欺骗,我 要实现自己的后端代码。 这意味着写PHP 即住在一个URL编码 这种形式的数据可以提交到。 然后你的代码, 用PHP编写的一台服务器上, 然后可以响应该用户输入。 就像他或她的名字,还是舒适程度, 或宿舍,然后用它做什么。 在这种情况下,我只 愣神打印出来 为文本,这是不是所有的漂亮。 但是,你当然可以 想象一下,如果你知道HTML, 你很快就会知道如何产生 HTML与打印f和打印, 和类似的功能,你当然可以 生成一个漂亮的网页,上面写着: 嘿大卫,你现在注册。 你是一个不太舒服 学生从马修斯,对不对? 你可以只用一大堆%SES的, 或大括号和美元符号 符号我用刚才,以 生成文本更人性化 莫过于此。 因此,让我们来看看这个文件。 Froshim零点PHP看起来是这样的。 当我重新加载CS50 IDE, froshim零看起来是这样的。 这是froshim零点PHP。 而且你注意到你看这个文件? 听众:[听不清] 扬声器1:对不起,大声一点好吗? 听众:[听不清]这一切都在HTML。 而事实上,这是因为 有趣的关于PHP 是,它被设计 是,为了更好的 不论好坏,间杂 与HTML代码。 而事实上,即使这 文件,froshim零点PHP, 在顶部一个PHP评论 它,这一切都只是HTML。 但相反的,如果我打开了,让我们 比方说,登记零点PHP,这 只是在顶部一个很大的评论。 这也看起来几乎完全 如HTML,但为了什么? 行,有什么,21显得有些怪异。 但是请注意,我进入PHP模式 与开放式支架问号PHP。 然后,我已经得到了一些东西。 然后在该行的末尾 几乎我有,问号PHP。 这就是我所说的混合体。 你可以写HTML,你只是 希望服务器吐了出来。 但是,如果你想要做的事 通过页面动态中途, 像插入我的名字, 宿舍还是舒适度, 我可以用一个函数 像打印内容R,这是 打印递归的,这只是意味着 打印出这个变量,格式化 不过你想要的。 这真的不是 人类的目的,它只是 进行调试或诊断的目的。 所以这就是我是怎么做的。 如果我不是去froshims双点PHP, 请注意,这种形式的操作 未注册零点PHP作为 old--前一个却呈。 但它注册了两个点PHP。 因此,让我们看看这个怎么一 行为方式略有不同。 如果我去成两个版本。 如果在这里,如果我注册为大卫少 舒适,从马修斯的宿舍, 注册。 所以这个时候它说,你 注册,不是真的。 让我们来看看我在这里做。 如果我看注册两个点 PHP,这有一些更多的PHP代码。 这是一个有点清洁剂,虽然它 仍然包裹在这条线有点长。 注意这里。 我打印出我的HTML标记,我的头标签, 我的标题标签,头部,身体。 然后我开始说 像进入PHP模式。 而这样的标签,打开支架 PHP--问号PHP说, 哎,服务器,execute--解释 下面的东西,PHP 直到看到结束标记。 而且即使你可能不知道的任何 其他PHP比你见过迄今为止, 那种你可以阅读 它非常直观。 如果名称为空,或舒适性 空,或宿舍是空的,我该怎么办? 我说什么给用户? 您必须提供您的姓名, 舒适度,和宿舍,等等。 否则,我说你是 注册,这不是真的。 我说的不是真的 因为没有数据库。 我不这样做与数据的任何东西。 我只是把它扔了 出于演示的目的。 现在我有点skimped超过22行。 还有更多的语法 有,但美元符号 强调文章是一种有趣的。 这是什么好的关于PHP。 在PHP中,你有什么被称为 几个超级全局变量。 他们是那种更 比全局变量非常重要的。 而这些,所有的资本 正因为如此,配备了PHP。 所以,如果你有一台服务器,有一个 Web服务器安装,如Apache, 你安装的语言 对于PHP,突然支持你 可以开始使用这些超级 在代码中的全局变量。 什么是好的关于 PHP是,如果你只是 写在点结尾的文件 PHP,把它放在一个Web服务器上, 然后提交表单给它 通过这一行动标签和一个表单标签, 在该action属性 表单标签,PHP和Web 完全计算出如何抓住 所有这些键值对了 类似问题的URL 马克Q等于猫, 它会找出如何q和猫。 如果您提交的照片,或用户名, 或口令喜欢的Facebook, PHP会找出适合你 其中所有的数据都是。 它会刚刚到手 你一个关联数组 所谓的美元符号下划线后, 或美元符号下划线得到, 这取决于你是否是 使用GET或POST提交。 而且它只会交给你 一个超级全局变量, 因此,如果你想获得的名字 用户通过该网络提交 表单,你真的只是说这个名字 超级全局变量,报价, 引文结束,名称。 和报价,引文结束的舒适度, 和报价,引文结束的宿舍。 而且我们要能够做到 这和这么多用PHP。 即使这是 一阵旋风在它一眼, 我们将更加下周深入研究。 我们就为大家介绍一个数据库 这样你实际上是 将开始实施 自己的电子交易based-- 喜欢的网站,在短短一个星期的时间。 所以我们会看到你下一次,和 希望你有短信。 再见。 [音乐播放] [门框] 扬声器2:嘿。 扬声器3:这是怎么回事? 扬声器2:你在做什么? 扬声器3:一个问题工作组。 扬声器2:好的。 举手击掌。 [举手击掌] 什么are--呃,你在这里做什么? 扬声器3:只是挂出。 刚从健身房回来。 我不由得 注意,当我们高击掌相庆, 你有很粗糙的手。 你去健身房? 扬声器2:否。 第 扬声器3:哥们,你看上去蛮大的。 这是不好的,因为每个人都知道 8球是大男人在校园里。 举手击掌。 扬声器2:哦,不。 不,我想我很好。 我觉得我很好。