php框架快速入门,php-laravel4.0框架 简单快速入门

前提必须已经安装好了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 functiongetIndex ()

{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 functionup(){

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

});

}public functiondown(){

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 functiongetIndex ()

{$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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/303356.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Filter+Redis解决项目之间调用的幂等性

幂等&#xff08;idempotent、idempotence&#xff09;是一个数学与计算机学概念&#xff0c;常见于抽象代数中。在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同在项目远程调用中&#xff0c;如果接口调用失败或者是超时&#xff0c;客户端都会…

人工智能、机器学习、深度学习,到底他们哥仨是什么关系?

有三个词&#xff0c;这两年出现的频率越来越高&#xff1a;人工智能&#xff08;AI&#xff09;&#xff0c;机器学习&#xff08;ML&#xff09;&#xff0c;深度学习&#xff08;DL&#xff09;&#xff0c;到底他们哥仨是什么关系&#xff1f;今天小编化繁为简&#xff0c;…

一起谈.NET技术,也玩MVC3.0 Razor自定义视图引擎来修改默认的Views目录结构

刚刚爱上MVC3.0&#xff0c;几个不眠夜的学习越来越有趣。今天随手尝试自定义Mvc3.0的视图引擎&#xff0c;虽然已成功&#xff0c;但是还发现有点小疑问。随手贴出来希望大家指教指教。 MVC的视图文件目录被固定/Views目录内&#xff0c;区域视图文件也是被固定在/Areas目录下…

如何在 ASP.NET Core 中使用 HttpClientFactory ?

ASP.Net Core 是一个开源的&#xff0c;跨平台的&#xff0c;轻量级模块化框架&#xff0c;可用它来构建高性能的Web程序&#xff0c;这篇文章我们将会讨论如何在 ASP.Net Core 中使用 HttpClientFactory。为什么要使用 HttpClientFactory 可以用 HttpClientFactory 来集中化管…

php dechex 补零,PHP dechex()函数

定义和用法dechex()函数返回包含十六进制给出等效的十进制数参数的字符串。此函数返回带有十六进制字符的字符串。语法dechex ( int $number ) : string参数序号参数及说明1数字以等效的十六进制表示形式转换的十进制数字返回值PHPdechex()函数在字符串内部返回一个十六进制数。…

如何选择合适的损失函数,请看......

机器学习中的所有算法都依赖于最小化或最大化某一个函数&#xff0c;我们称之为“目标函数”。最小化的这组函数被称为“损失函数”。损失函数是衡量预测模型预测期望结果表现的指标。寻找函数最小值的最常用方法是“梯度下降”。把损失函数想象成起伏的山脉&#xff0c;梯度下…

关于IIS服务启动失败的问题:“IIS提示‘另一个程序正在使用此文件,进程无法访问’”,的解决方法...

IIS中网站服务所占用的是80端口&#xff0c;出现这样的提示我们可以判定是端口冲突造成的&#xff0c;故&#xff0c;查看真正运行的占用80端口的程序&#xff0c; 在“运行”输入“cmd”&#xff0c;进入命令行&#xff0c; 输入netstat -abn > c:/port80.txt 此命令既是查…

OxyPlot.SkiaSharp中文显示乱码的问题

oxyplot 图表控件功能强大&#xff0c;使用很广泛。最近考虑到性能使用OxyPlot.SkiaSharp替代OxyPlot.WPF&#xff0c;曲线图表初步测试&#xff0c;性能提升近10倍左右。基于SkiaSharp图形引擎的一些控件常遇见中文乱码的问题&#xff0c;所以改用OxyPlot.SkiaSharp时也有心里…

php return 变量,php内核笔记–函数返回变量return_value

//这些宏都定义在Zend/zend_API.h文件里#define RETVAL_RESOURCE(l)ZVAL_RESOURCE(return_value, l)#define RETVAL_BOOL(b)ZVAL_BOOL(return_value, b)#define RETVAL_NULL() ZVAL_NULL(return_value)#define RETVAL_LONG(l) ZVAL_LONG(return_value, l)#define RETVAL_DOUBLE…

想入门平均月薪2.58w人工智能领域?看看BAT的工程师在学什么

在这个贩卖焦虑的时代&#xff0c;职场人士和新晋父母成为了重点呵护对象&#xff0c;前有“摩拜同龄人”超越你&#xff0c;后有“月薪 3 万支撑不起的暑假班”等着你&#xff0c;而人工智能&#xff0c;又威胁要彻底抢走你的饭碗。京东无人分拣中心曝光&#xff0c;华尔街顶级…

formcheck 自定义验证

POST提交前的验证:formcheck new FormCheck(formular,{onSubmit:onsubmitfun});onSubmit:onsubmitfun提交前的验证function方法formcheck.options.submitfalse时就不提交了自定义验证function方法:<input type"text" name"custom" class"validate[…

.NET 6 Preview 3 发布

前言2021/4/8 .NET 6 Preview 3 发布&#xff0c;这个版本的改进大多来自于底层&#xff0c;一起来看看都有什么新特性和改进吧。库改进新增值类型作为字典值时更快的处理方法.NET 6 Preview 3 引入了新的 unsafe API CollectionsMarshal.GetValueRef&#xff0c;这个 API 允许…

php mysql datetime时区,Django models通过DateTimeField保存到MySQL的时间的时区问题

最近开始使用Django开发一些系统&#xff0c;在models.py中设置一些数据库表结构并给日期时间字段赋初值&#xff0c;不过在使用的过程中&#xff0c;遇到一点问题。问题是&#xff0c;我本来服务器使用的市区是“Asia/Shanghai”(08:00)&#xff0c;然后用datetime.now保存到数…

数据挖掘在生活上的应用

随着信息科技的进步&#xff0c;数据的收集变得十分便利。各式各样(手机、信用卡、浏览网页及部落格等)的信息&#xff0c;从不同的数据源&#xff0c;涌入我们预先设计好的数据仓储。这些信息透过数据挖掘的技术组合在一起&#xff0c;就可快速地勾勒出每个人对生活的品味、特…

Asp.Net Core 5 REST API 使用 JWT 身份验证 - Step by Step(二)

翻译自 Mohamad Lawand 2021年1月22日的文章 《Asp Net Core 5 Rest API Authentication with JWT Step by Step》 [1]在本文中&#xff0c;我将向您展示如何向我们的 Asp.Net Core REST API 添加 JWT 身份验证。我们将介绍的主题包含注册、登录功能以及如何使用 JWT (Json Web…

php获取某地的ip,php获取本土实际IP

php获取本地实际IPfunction real_ip(){static $realip NULL;if ($realip ! NULL){return $realip;}if (isset($_SERVER)){if (isset($_SERVER[HTTP_X_FORWARDED_FOR])){$arr explode(,, $_SERVER[HTTP_X_FORWARDED_FOR]);foreach ($arr AS $ip){$ip trim($ip);if ($ip ! unk…

掌握这四点核心思想,统计学才算入门

在日常生活中&#xff0c;统计无处不在&#xff0c;比如最常见的问卷调查。实际上&#xff0c;统计学作为一门研究数据收集、整理与分析的学科&#xff0c;是能够帮助我们实现数据运用的终极目标&#xff08;终极目标&#xff1a;洞悉本质、确定规律、预测未来&#xff09;。但…

#抵抗3#(#Resistance 3#) 绝对值得体验的冒险历程

#抵抗3#(#Resistance 3#) 本月6日发售的PS3游戏, 绝对值得体验的冒险历程. 附上通关视频http://v.youku.com/v_show/id_XMzAyMDMzNTc2.html

NET问答: Log4Net 无法将日志写入到 log 文件的求助.....

咨询区 john84&#xff1a;我在一个小项目中用上了 Log4Net&#xff0c;程序跑起来后没有任何日志写入到 log 文件&#xff0c;可能是我的 log appender 配的有问题&#xff0c;尴尬????&#xff0c;大家看看我这样配的有问题吗&#xff1f;web.config 完整的配置如下。<…

centos php.ini redis,CentOS下安装Redis及Redis的PHP扩展

1、安装Redis1.1 如果没有安装wget&#xff0c;安装wgetyum install wgetwget http://download.redis.io/releases/redis-3.2.0.tar.gz1.3 解压&#xff0c;并进入解压目录进行编译。编译成功后会在redis-3.2.0目录下生成相关文件$ tar xzf redis-3.2.0.tar.gz$ cd redis-3.2.0…