去年在英国诺丁汉参加当地聚会时,我和朋友们了解了 NodeSchool 的概念。NodeSchool 工作坊是一些在终端运行的小型应用程序,旨在教授与 Node 和 JavaScript 相关的各种主题。它们涵盖从 JavaScript 基础知识到处理 C++ 扩展的各种内容。
我玩得很开心,这些工作坊非常酷——您可以选择一个练习,阅读问题并开始编码。每个练习都解释了概念并提供了资源链接。编写完问题的解决方案后,您可以使用您的解决方案调用工作坊。然后运行您的解决方案,并将有关您成功(或失败!)的信息打印到终端。
我是一名 PHP 开发人员——第二天我心想:PHP 有类似的东西吗?PHP 肯定有类似的东西吧?结果发现没有!
所以我们创建了它。欢迎来到 PHP School。

在这篇文章中,我们将简要讨论我们创建它的原因、如何运行其中一个工作坊以及最后如何参与其中。
PHP School
完全开源——框架是开源的,网站是开源的,实际的工作坊也是开源的。在过去的约 9 个月里,我们一直在构建和完善 PHP School。我们还有很多事情要做,我们计划构建更多工作坊。
目前我们有一个工作坊 Learn You PHP!——Learn You Node 的 PHP 移植版本。我们认为这种格式非常有效,因此我们将初始工作坊构建得尽可能相似。
我们为什么要创建它?
我们觉得 PHP 缺乏专业的学习资源,对于最流行的 Web 开发语言之一,我们认为这很奇怪。当然,也有一些好的资源,例如 PHP – The Right Way、SitePoint – PHP、Laracasts 等,但没有像 PHP School 这样的资源。
NodeSchool 真正打动我们的是它非常适合聚会和组织工作坊。每个人都安装软件并尝试练习——组织者、志愿者或当选人员可以四处走动,帮助任何遇到困难的人或只是回答问题。所有验证过程都由应用程序自动完成。
我们构建了这个框架,以便人们可以轻松构建自己的工作坊。这使我们作为一个社区能够专注于教学和材料,而不是后勤工作。正如 NodeSchool 社区所证明的那样,这是一个经过验证的概念。
希望我们能够降低编码的门槛!
设置
不幸的是,如果您使用的是 Windows,那么安装起来并不那么简单。并非不可能,但也不容易。本指南将重点介绍 Linux 安装,但如果您想在 Windows 上尝试,可以按照我们 网站上的说明 进行操作。
为了安装 Learn You PHP!,需要满足几个条件。
- PHP 5.6 或更高版本
- Composer
- 文本编辑器
本指南假设您已安装这些软件并知道如何使用它们,如果您不知道,可以在 Composer 网站 和 PHP 网站 上了解相关信息。
您还需要确保 Composer 的全局 bin 目录已添加到您的 $PATH
环境变量中,您可以 在 Composer 网站 上查看如何操作。
打开终端并运行
$ composer global require php-school/learn-you-php:~0.1
编者注:对于初学者,您在上面这样的行中看到的“$”表示“命令提示符的结尾”。您的可能看起来不同。我的显示为“Chriss-MacBook-Pro-2:~ chriscoyier$”。如果您复制粘贴命令,请不要复制“$”部分。
这将在您的系统上全局安装 Learn You PHP!。您应该可以通过键入以下命令来运行它:
$ learnyouphp
将显示一个包含练习列表的菜单。您可以使用箭头键在菜单中导航,并使用退出按钮退出。按 Enter 键选择练习。
问题将打印到终端,其中包括问题的描述和一些需要理解的链接。第一个练习“Hello World”要求您编写一个打印文本“Hello World”的程序,所以让我们来做吧!
首先,我们需要一个文件夹来存放我们的工作,让我们在主目录中创建名为:`learnyouphp` 的文件夹
$ cd ~
$ mkdir learnyouphp
$ cd learnyouphp
打开文本编辑器并将以下代码放入其中
<?php
echo "Hello World";
将其保存为名为 helloworld-solution.php
的文件,并将其放在我们刚刚创建的文件夹中。现在我们可以返回到命令行并验证我们的练习
$ learnyouphp verify helloworld-solution.php
您应该会收到一条消息,说明您的解决方案已成功。
因此,您完成了第一个练习——现在您可以继续进行下一个练习,每个练习的难度都会增加,同时介绍 PHP 中的新概念!
简介和安装视频演练
聚会
我们希望在聚会和其他活动中运行这些工作坊,如果您有兴趣使用这些工作坊,请继续使用,如果您需要任何帮助,请告诉我们,或者只是让我们知道您在做什么以及效果如何。
我们希望社区能够发展壮大,达到甚至超过 Node School 的规模——我们希望很快自己组织一些聚会,以推动发展。
参与其中
您可以做很多事情
- 举办工作坊活动
- 向您的用户组组织者提议举办工作坊
- 帮助构建更多工作坊
我们计划扩展工作坊库,因此如果您想构建一个工作坊,请访问 我们网站上的文档。文档将在未来几周内不断更新,因此请定期查看有关更高级功能的文档。
如果您想使用 PHP School 举办聚会,请与 @aydin_h 或 @mikeymikemw 联系,也许我们可以来帮忙设置。
获取帮助
有几个沟通渠道
总结
希望本文能激发您的灵感——也许您会继续使用 PHP School 学习 PHP。也许您会在您组织的聚会上使用 PHP School,或者向您参加的聚会组织者提议使用它。也许您会构建自己的工作坊来教授某个主题或展示您的工具。
无论您做什么——请告诉我们——在 Slack 频道 中留言或 发推文告诉我们!
我认为我们都可以同意,教育和学习对我们这一代和未来几代人具有重大意义。技术是我们进化的重要组成部分,可以解决当今世界许多问题。编程是其中的一小部分——您可以学习编程!
我对这个真的很兴奋。这似乎是个好主意,从屏幕截图来看非常棒。不幸的是,我在 Windows 7 上运行时遇到了错误。
我遇到的错误是
致命错误:捕获到异常“RuntimeException”,消息为“无法找到 Composer 自动加载器;请运行“composer install”。”在 C:\Directory\Composer\vendor\php-school\learn-you-php\app\bootstrap.php
堆栈跟踪:#0 C:\Directory\Composer\vendor\php-scool\learn-you-php\bin\learnyouphp(4): require_once()
#1 (main)
在 C:\Directory\Composer\vendor\php-school\learn-you-php\app\bootstrap.php 的第 20 行抛出
这可能是用户错误,但我相信我已经完全按照说明安装了它。
嗨,Zak - 你可以将安装步骤的输出粘贴为 gist 吗?希望我们能从中找出原因。不过,它确实听起来像是 Composer 没有正确安装。