前提必须已经安装好了laravel4.0版本。

写入权限:
  安装完 Laravel ,你还需要为web服务器设置 app/storage 目录的写入权限。

目录结构:
  安装完框架后,你需要熟悉一下该项目的目录结构。app 文件夹包含了一些如 views ,controllers 和 models 目录。 程序中大部分代码将要存放这些目录下。

路由:
  我们开始创建我们第一个路由。在 Laravel,简单路由的方法是闭包。打开 app/routes.php 文件加入如下代码:

Route::get('users', function(){
    return 'Users!';
});

  现在,你在 web 浏览器输入 /users,你应该会看到 Users! 输出。真棒!已经创建了你第一个路由。路由也可以赋予控制器类。例如:

Route::get('Users', 'UserController@getIndex');

  该路由告知框架 /users 路由请求应该调用 UserController 类的 getIndex 方法。

创建视图
  接下来,我们要创建视图来显示我们用户数据。视图以HTML代码存放在 app/views 文件夹。我们将存放两个视图文件到该文件夹:

  layout.blade.php 和 users.blade.php。首先创建 layout.blade.php 文件:

<html>
    <body>
    <h1>父页面</h1>
        @yield('content')
    </body>
</html>

  接着创建 users.blade.php 视图(@extends('layout')上面不能有空行或者它的前面不能有空格,如有就会报错。):

@extends('layout')
@section('content')
 Users!
@stop

  使用的是 Laravel 模板系统:Blade。Blade 非常快,因为仅使用了少量的正则表达式来为你的模板编译成原始PHP代码。Blade提供强大的功能。
  有了视图,app/controllers/Userscontroller.php文件里面getIndx方法里面下面代码。我们用视图来替代返回 Users!:

public function getIndex ()
{
    return View::make('users');
}

  成功创建了继承至layout的视图

创建迁移
  要创建表来保存数据,将使用 Laravel 迁移系统。迁移描述数据库的改变,这让分享给他们团队成员非常简单。

  首先,配置数据库连接。你可以在 app/config/database.php 文件配置所有数据库连接信息。默认,Laravel 被配置为使用 SQLite,

  并且一个 SQLite 数据库存放在 app/database 目录。你可以将数据库配置文件的 driver 选项修改为 mysql 并且配置 mysql 连接信息。
  接下来,要创建迁移,我们将使用 Artisan CLI。在项目根目录中,在终端中执行以下命令:

php artisan migrate:make create_users_table

  然后,找到生成的迁移文件 app/database/migrations 目录。该文件包含了一个包含两个方法: up 和 down 的类。在 up 方法,你要指
  名数据库表的修改,在 down 方法中你只需要移除它。
  让我们定义如下迁移:

public function up(){
    Schema::create('users', function($table){
        $table->increments('id');
        $table->string('email')->unique();
        $table->string('name');
        $table->timestamps();
    });
}
public function down(){
    Schema::drop('users');
}

  然后,我们在项目根目录中使用终端运行 migrate 命令来执行迁移:

php artisan migrate

  如果想回滚迁移,你可以执行 migrate:rollback 命令。现在已经有了数据库表,让添加一些数据!

Eloquent ORM(模型)
  Laravel 提供非常棒的 ORM:Eloquent。如果你使用过 Ruby on Rails 框架,你会发现 Eloquent 很相似,因为它遵循数据库交互的

  ActiveRecord ORM 风格。

  首先,让我们来定义个模型。ELoquent 模型可以用来查询相关数据表,以及表内的某一行。别着急,我们很快会谈及!模型通常存放在

  app/models 目录。让我们在该目录定义个 User.php 模型,如:

class User extends Eloquent {}

  注意并没有告诉 Eloquent 使用哪个表。Eloquent 有多种约定, 一个是使用模型的复数形式作为模型的数据库表。非常方便!
  使用你喜欢的数据库管理工具,插入几行数据到 users 表,我们将使用 Eloquent 取得它们并传递到视图中。
  现在修改 app/controllers/Userscontroller.php文件里面getIndx方法里面如下:

public function getIndex ()
{
    $users = User::all();
    return View::make('users')->with('users', $users);
}

  看看该路由。首先,User 模型的 all 方法将会从 users 表中取得所有记录。接下来,通过 with 方法将这些记录传递到视图。with
  方法接受一个键和一个值,那么该值就可以在视图中使用了。

显示数据
  现在视图中已经可以访问 users 类,可以如下显示它们:

@extends('layout')
@section('content')
@foreach($users as $user)
<p>{{ $user->name }}</p>
<p>{{ $user->email }}</p>
@endforeach
@stop

  当使用 Blade 时,你可以使用两个花括号来输出数据。现在应该可以通过 /users 路由来查看到用户姓名作为响应输出。

php-laravel4.0框架 简单快速入门的更多相关文章

  1. Shiro权限框架简单快速入门

    声明本文只适合初学者,本人也是刚接触而已,经过一段时间的研究小有收获,特来分享下希望和大家互相交流学习. 首先配置我们的web.xml代码如下: <filter> <filter-n ...

  2. Nodejs ORM框架Sequelize快速入门

    Nodejs ORM框架Sequelize快速入门 什么是ORM? 简单的讲就是对SQL查询语句的封装,让我们可以用OOP的方式操作数据库,优雅的生成安全.可维护的SQL代码.直观上,是一种Model ...

  3. Mybatis框架 的快速入门

    MyBatis 简介 什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果 ...

  4. ssm框架整合快速入门

    写在前面: 公司一直都是使用ssh框架(Struts2,Spring,Hibernate)来开发,但是现在外面的公司大多数都是使用的ssm框架,所以也有必要多学习一下外面的新技术.这里就快速搭建一个小 ...

  5. Hibernate入门第一讲——Hibernate框架的快速入门

    Hibernate框架的概述 什么是框架? 框架指的是软件的半成品,已经完成了部分功能. JavaEE开发的三层架构 了解框架的基本概念之后,我们就来看看Hibernate框架处于JavaEE开发的经 ...

  6. [jbdj]SpringMVC框架(1)快速入门

    1)springmvc快速入门(传统版) 步一:创建springmvc_demo一个web应用 步二:导入springioc,springweb , springmvc相关的jar包 步三:在/WEB ...

  7. springboot2.0整合freemarker快速入门

    目录 1. 快速入门 1.1 创建工程pom.xml文件如下 1.2 编辑application.yml 1.3 创建模型类 1.4 创建模板 1.5 创建controller 1.6 测试 2. F ...

  8. Shiro安全框架【快速入门】就这一篇!

    Shiro 简介 照例又去官网扒了扒介绍: Apache Shiro™ is a powerful and easy-to-use Java security framework that perfo ...

  9. 分布式应用框架Akka快速入门

    转自:http://blog.csdn.net/jmppok/article/details/17264495 本文结合网上一些资料,对他们进行整理,摘选和翻译而成,对Akka进行简要的说明.引用资料 ...

随机推荐

  1. 【Spring 核心】装配Bean(一) 自动化装配

    Spring从两个角度实现自动化装配:组件扫描 (Spring自动发现应用上下文中所创建的bean)自动装配(autowiring)自动满足bean之间的依赖 组件扫描: package test.s ...

  2. C# 实例练习——字符串处理(第三天)

    1.  编写程序将IP地址分解后输出(将IP地址中的点(.)去掉,替换成空格符),如:132.123.4替换后为132  123   4. Console.WriteLine("请输入您电脑 ...

  3. Integer陷阱(0~127和其他 数值相等对象比较)

    Integer 类在对象中包装了一个基本类型 int 的值. 有一个陷阱存在,经常出现在面试题中,情况如下面代码 public class IntegerDemo { public static vo ...

  4. Andrew Ng机器学习课程笔记--week4(神经网络)

    Neural Networks: Representation 一. 内容概要 Neural Network Model Representation 1 Model Representation 2 ...

  5. pickle模块的使用python3

    Python的pickle模块实现了基本的数据序列和反序列化.通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储:通过pickle模块的反序列化操作,我们能够从文件 ...

  6. Hibernate注解-类级别注解

  7. javascript如何用递归写一个简单的树形结构

    现在有一个数据,需要你渲染出对应的列表出来: var data = [ {"id":1}, {"id":2}, {"id":3}, {&qu ...

  8. 【Ztree】前台展示多级菜单,后台配置方法

    第一步.前台HTML页面. <%@ Page Language="C#" AutoEventWireup="true" CodeBehind=" ...

  9. Python内存优化

    实际项目中,pythoner更加关注的是Python的性能问题,之前也写过一篇文章<Python性能优化>介绍Python性能优化的一些方法.而本文,关注的是Python的内存优化,一般说 ...

  10. flex弹性布局学习

    一.介绍 flex( flexible box:弹性布局盒模型),是2009年w3c提出的一种可以简洁.快速弹性布局的属性.主要思想是给予容器控制内部元素高度和宽度的能力.目前已得到以下浏览器支持: ...