许多编程语言都以“Hello World”这个经典的程序为开始,我们也可以从它来开始我们的sp之旅。以下,本章将介绍基于SpeedPHP的“Hello World”程序,同时介绍了sp框架基础程序的写法。
接着上一章已经安装好的sp框架程序,您的本地服务器上应该是以下的目录结构:
![](https://box.kancloud.cn/2015-10-19_562493877ebe6.jpg)
进入controller目录,打开main.php文件,您可以看到:
~~~
<?php
class main extends spController
{
function index()
{
echo "Hello World";
}
}
?>
~~~
将以下代码:
`echo "Hello World";`
替换部分代码:
~~~
function index(){
echo "SpeedPHP框架已经正常运行,欢迎使用!";
}
~~~
> 如何打开PHP文件?请使用windows自带的记事本,或者可以使用EmEditor或者EditPlus(Google一下就可以找到)。
打开您的浏览器,输入http://localhost/,您将可以看到:
![](https://box.kancloud.cn/2015-10-19_5624938813d8f.jpg)
以上的步骤已经输出了“Hello World”的语句了。下面我们将在此页面,建立一个链接,然后在点击后显示当然日期和时间。
在main.php中,加入以下time()代码:
~~~
<?php
class main extends spController
{
function index()
{
echo "Hello World";
echo "
<a href='index.php?c=main&a=time'>显示当前时间</a>";
}
function time()
{
echo date("Y-m-d H:i:s");
}
}
?>
~~~
刷新刚才的网址(http://localhost),您可以看到:
![](https://box.kancloud.cn/2015-10-19_562493881fff6.jpg)
点击“显示当前时间”的链接,您将可以看到:
![](https://box.kancloud.cn/2015-10-19_562493882e1b9.jpg)
该页面使用了PHP函数date来显示您本地服务器的标准时间。
下面,我们另外建立一个新的number.php,来显示一个数字的四舍五入结果。当然,因为这个number.php是用来做数学运算的,所以我们需要另外一个文件来写这个程序。
新建一个文本文件,并且把文件名改成number.php。
在number.php内输入以下代码:
~~~
<?php
class number extends spController
{
function show()
{
$num = 3.1415;
echo "原来数字是$num";
echo "
";
$num = round($num);
echo "经过四舍五入后,结果是:$num";
}
}
?>
~~~
输入完成后,我们在原来的main.php上面改写了一下链接:
~~~
<?php
class main extends spController
{
function index()
{
echo "Hello World";
echo "
<a href='index.php?c=number&a=show'>显示数字的四舍五入</a>";
}
function time()
{
echo date("Y-m-d H:i:s");
}
}
?>
~~~
打开您的浏览器,访问http://localhost/,然后点击链接“显示数组的四舍五入”,我们可以看到:
![](https://box.kancloud.cn/2015-10-19_562493883dbc2.jpg)
至此,我们可以发现一些规律:
![](https://box.kancloud.cn/2015-10-19_56249388479fb.jpg)
在controller目录内的每个文件,我们都称为控制器(controller)。每个控制器,相对来说就是多个相关程序的集合,而每个控制器内部的每一个function,都是一个动作(action),而这些动作(程序),都是相关性比较紧密的。比如说在用户登录注册的程序里面,可能会有一个叫user.php的控制器,而里面可能有:
* function register() 用户注册程序
* function login() 用户登录程序
* function findpassword() 找回密码程序等等。。。
这些动作(程序)都是与user.php(用户程序)是非常紧密相关的,所以我们放到同一个控制器里面。
> 我们可能一开始不习惯使用控制器来代替传统的一个PHP文件就是一个程序的写法,但是实际开发已经证明了,这是非常有效地组织代码的方式,而且很容易就可以习惯。很快您会发现,使用控制器来组织您的程序,整个程序将会更有规划性,而且更简单有序。
而访问这些程序,可以使用index.php?c=user&a=login的形式来访问。(当然,后面会介绍更强大和简便的方式来生成这些地址)。c对应了控制器的名称,而a是对应了动作的名称。也就是如果需要访问user控制器内的findpassword动作,就是index.php?c=user&a=findpassword。
> sp框架的应用程序使用的是单入口的模式,也就是整个系统仅能从单一的index.php访问。
在了解了控制器的使用后,我们便可以清晰了解到sp程序的基本写法了。下一章将会更详细的介绍一下当前PHP业界最为流行的MVC结构,当然,这会很容易就理解,因为本章介绍的控制器(controller)就是MVC的C。