多编程语言都以“Hello World”这个经典的程序为开始,我们也可以从它来开始我们的sp之旅。以下,本章将介绍基于SpeedPHP的“Hello World”程序,同时介绍了sp框架基础程序的写法。
接着上一章已经按照好的sp框架程序,您的本地服务器上应该是以下的目录结构:
进入controller目录,打开main.php文件,您可以看到:
2 |
class main extends spController
|
将以下代码:
echo "Hello World";
替换红色部分的代码:
function index(){
echo "SpeedPHP框架已经正常运行,欢迎使用!";
}
如何打开PHP文件?请使用windows自带的记事本,或者可以使用EmEditor或者EditPlus(Google一下就可以找到)。
打开您的浏览器,输入http://localhost/,您将可以看到:
以上的步骤已经输出了“Hello World”的语句了。下面我们将在此页面,建立一个链接,然后在点击后显示当然日期和时间。
在main.php中,加入以下time()代码:
02 |
class main extends spController
|
06 |
echo "<br><a href='index.php?c=main&a=time'>显示当前时间</a>" ;
|
09 |
echo date ( "Y-m-d H:i:s" );
|
刷新刚才的网址(http://localhost),您可以看到:
点击“显示当前时间”的链接,您将可以看到:
该页面使用了PHP函数date来显示您本地服务器的标准时间。
下面,我们另外建立一个新的number.php,来显示一个数字的四舍五入结果。当然,因为这个number.php是用来做数学运算的,所以我们需要另外一个文件来写这个程序。
新建一个文本文件,并且把文件名改成number.php。
在number.php内输入以下代码:
02 |
class number extends spController
|
09 |
echo "经过四舍五入后,结果是:$num" ;
|
输入完成后,我们在原来的main.php上面改写了一下链接:
02 |
class main extends spController
|
06 |
echo "<br><a href='index.php?c=number&a=show'>显示数字的四舍五入</a>" ;
|
09 |
echo date ( "Y-m-d H:i:s" );
|
打开您的浏览器,访问http://localhost/,然后点击链接“显示数组的四舍五入”,我们可以看到:
至此,我们可以发现一些规律:
在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。
分享到:
相关推荐
在IT行业中,Maven和SpringMVC是两个非常重要的组件,它们分别是项目管理和Web应用程序开发的核心...通过这个入门级的HelloWorld实例,我们可以快速理解这两个工具的基本用法,为进一步深入学习和实践打下坚实的基础。
### JNI入门之HelloWorld(一)详解 #### 一、引言 JNI(Java Native Interface)是Java平台标准的一部分,它允许Java代码与其他语言写的代码进行交互。JNI接口提供了若干公共服务,并为Java虚拟机和本机应用程序或...
本篇文章将带你入门Struts2,通过创建一个简单的"HelloWorld"示例来理解其核心概念。 首先,了解Struts2框架的基本组成: 1. **Action类**:这是业务逻辑的入口点,处理用户请求并返回结果。在我们的"HelloWorld...
**JSF(JavaServer Faces)入门 HelloWorld 指南** JavaServer Faces (JSF) 是一个用于构建用户界面的 JavaEE 核心技术,它提供了一种声明式的方式来创建 Web 应用程序的用户界面。JSF 提供了一个组件模型,使得...
### 认识Android入门的HelloWorld程序 #### 程序构成详解 本文旨在通过剖析一个简单的`HelloWorld`程序,让读者深入了解Android应用程序的基本结构及其运行机制。这对于初次接触Android开发的学习者而言至关重要。...
【标题】"Dubbo入门案例HelloWorld"是一个基础的学习教程,旨在帮助初学者理解并实践Dubbo框架的基本用法。Dubbo是阿里巴巴开源的一款高性能、轻量级的Java RPC(远程过程调用)框架,它提供了服务治理、负载均衡、...
C#第一个程序,helloworld using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace helloworld { class helloworld { [STAThread] static void Main(string[] args)...
第一次共享自己的代码,Spring Hello World。代码比较简单,适合初学者,入门使用。高手就不要下载。呵呵。
标题中的“hello world hello world”和描述中的“hello world”似乎是在引用计算机编程中的经典入门程序,通常用于演示一个语言的基本输出功能。在大多数编程语言中,“Hello, World!”是初学者编写的第一个程序,...
标题中的“helloworld”是许多编程语言中的入门示例,旨在帮助初学者快速熟悉编程环境和基础语法。在CREO二次开发中,"helloworld"项目通常会展示如何设置开发环境,创建一个简单的CREO插件,并实现一些基本功能,如...
java 入门 public class helloworld{ public static void main String[] args { System out println "hello world" ; } }
在Android开发领域,"Hello, World!"项目是一个经典的起点,它为初学者提供了一个简单而直接的编程体验,帮助他们理解和熟悉Android应用的基本构建过程。本文将深入探讨这个入门实例,带您逐步走进Android开发的世界...
在Xcode中创建新项目时,选择"Single View App"模板,填写项目名称(例如:helloworld)和组织标识符,选择Swift作为编程语言。 三、ViewController 在iOS应用中,`UIViewController`是屏幕内容的基本控制器。在...
[AI教程]TensorFlow入门:Hello World与基本操作-代码
iBatis,现已被更名为MyBatis,是一个优秀的持久层框架,它支持定制化SQL、存储过程以及高级映射。...通过这个简单的"iBatis入门Helloworld"项目,你可以快速掌握iBatis的基础操作,并为进一步学习和应用打下坚实基础。
总之,"Dubbo入门之HelloWorld"是一个很好的起点,通过实践这个简单的示例,我们可以快速理解Dubbo的工作原理,并为进一步深入学习和掌握Dubbo的高级特性和最佳实践打下坚实的基础。在实际开发中,结合源码阅读和...
public class HelloWorld { public static void main(String[] args) { System.out.println("Hello, World!"); } } ``` 这两个例子展示了不同编程语言中输出文本到控制台的方法。 标签“hello_world_ world”...
### Fortran 入门教程之Hello world #### 知识点概述 1. **Fortran简介及历史背景** 2. **“Hello, World!”程序的意义及其在编程学习中的作用** 3. **Fortran编译器的选择与安装** 4. **Fortran程序的基本结构** ...
public class HelloWorldImpl implements HelloWorld { public String sayHello(String name) { return "Hello, " + name; } } ``` **步骤三:配置CXF并发布服务** 1. 在Maven的src/main/webapp/WEB-INF目录下...
在"Guice入门教程HelloWorld篇"中,我们将学习如何使用Guice来构建简单的Java应用程序。首先,我们需要理解Guice的核心概念——模块(Module)和绑定(Binding)。模块是Guice配置的核心,它定义了哪些类应该被实例...