laravel学习

103 阅读5分钟

一。常用函数

is_null() 函数用于检测变量是否为 NULL。

 is_array()函数用于检测变量是否是一个数组。

is_int()函数用于检测变量是否是整数,别名函数():is_integer()、is_long()

is_numeric() 函数用于检测变量是否为数字或数字字符串。用于表单输入

 is_object()函数用于检测变量是否是一个对象

is_scalar() 函数用于检测变量是否是一个标量。标量变量是指那些包含了 integer、float、string 或 boolean 的变量,而 array、object 和 resource 则不是标量。(按照js就是基本类型和对象类型区别)

<?php
function show_var($var) {
    if (is_scalar($var)) {
        echo $var;
    } else {
        var_dump($var);
    }
}
$pi = 3.1416;
$sites = array("Runoob", "Google", "Facebook");
 
show_var($pi);
echo PHP_EOL;
show_var($sites)
?>
输出结果为:
3.1416
array(3) {
  [0]=>
  string(6) "Runoob"
  [1]=>
  string(6) "Google"
  [2]=>
  string(8) "Facebook"
}

boolval 函数用于获取变量的布尔值。(注意与js不同的boolval('0')是false)

var_dump() 函数用于输出变量的相关信息。var_dump() 函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

explode() 函数使用一个字符串分割另一个字符串,并返回由字符串组成的数组。"separator" 参数不能是一个空字符串。

intval() 函数用于获取变量的整数值。

floatval()、doubleval () 函数用于获取变量的浮点值,floatval 不能用于数组或对象。

empty() 函数用于检查一个变量是否为空。

get_defined_vars() 函数返回由所有已定义变量所组成的数组。

get_resource_type() 返回资源(resource)类型。

sizeof() 函数返回数组中元素的数目。sizeof() 函数是 count() 函数的别名。

isset() 函数用于检测变量是否已设置并且非 NULL。

参考网站(www.runoob.com/php/php-var…

array_shift() 函数用于删除数组中的第一个元素,并返回被删除的元素。 参考网站:www.runoob.com/php/php-ref…

二。Illuminate\Support\Arr 是一个数组助手类#

ArrayAccess(数组式访问)接口

参考网站:learnku.com/articles/82…

三。

 instanceof函数是php5中新添的面向对象的函数。他主要的做用是 检测一个给定的对象是否属于(继承于)某个类(class)、某个类的子类、某个接口(interface)。若是是则返回true。反之返回false;php

register 方法用于绑定服务到容器,框架会先调用所有 provider 的 register 方法,等所有服务都注册完毕再去调用每一个服务的 boot 方法。

四、PHP命名空间的用法

1、定义

命名空间的定义采用关键字namespace,定义方式如下:

namespace example

则该命名空间下的类都归属于该命名空间,example命名空间下的类不能重名。

或者可以定义多级命名空间:

namespace example\test\demo

则改命名空间下的类全归属于example\test\demo命名空间。

2、引入

引入命名空间使用关键字use,可以通过多个use在一个文件中引入多个命名空间:

use example; use example\test\demo;

五。use Illuminate\Support\Facades\Cache; Laravel 的缓存

直接使用Laravel为我们提供的Facade

use Illuminate\Support\Facades\Cache;
$cache = Cache::get('key');

支持的大部分方法:

Cache::put('key', 'value', $minutes);
Cache::add('key', 'value', $minutes);
Cache::forever('key', 'value');
Cache::remember('key', $minutes, function(){ return 'value' });
Cache::rememberForever('key', function(){ return 'value' });
Cache::forget('key');
Cache::has('key');
Cache::get('key');
Cache::get('key', 'default');
Cache::get('key', function(){ return 'default'; });
Cache::tags('my-tag')->put('key','value', $minutes);
Cache::tags('my-tag')->has('key');
Cache::tags('my-tag')->get('key');
Cache::tags('my-tag')->forget('key');
Cache::tags('my-tag')->flush();
Cache::increment('key');
Cache::increment('key', $amount);
Cache::decrement('key');
Cache::decrement('key', $amount);
Cache::tags('group')->put('key', $value);
Cache::tags('group')->get('key');
Cache::tags('group')->flush();

六。

=>是创建数组时使用的赋值运算符(相当于前端的:)

array(key => value, key2 => value2)

->是访问运算符。使用对象运算符( - >)来访问对象(方法和变量)的属性

七。

this的含义是表示实例化后的具体对象。用法为【this的含义是表示实例化后的具体对象。用法为【this->】表示在类内使用本类的属性或者方法。

this哪个对象调用,this哪个对象调用,this就代表哪个对象。将this理解为对象的引用,this理解为对象的引用,this通过引用的形式访问一个对象的方法和属性)

八。

常用的输出方式有:echo 、print 、print_r 、var_dump 、var_exprot,die 等;

echo(): 可以一次输出多个值,多个值之间用逗号分隔。echo是语言结构(language construct),而并不是真正的函数,因此不能作为表达式的一部分使用。

print(): 函数print()打印一个值(它的参数),如果字符串成功显示则返回true,否则返回false。

print_r(): 可以把字符串和数字简单地打印出来,而数组则以括起来的键和值得列表形式显示,并以Array开头。但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。

var_dump(): 判断一个变量的类型与长度,并输出变量的数值,如果变量有值输的是变量的值并回返数据类型。此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

die() 有两个功能:先输出内容,然后退出程序。

var_export()主要用来对上线的项目做调试,打印出来结果,放到线下来检查。

echo和print常用来输出字符串;

查看数组常用print_r、var_dump、var_exprot;

若使用echo和print输出数组时则,结果只能显示"Array",不会显示数组的结构。

七。数组

$cars=array("Volvo","BMW","Toyota");
相当于数组arr=["Volvo","BMW","Toyota"]  ,$cars[0]//Volvo
关联数组  
$a = array ('a' => 'apple', 'b' => 'banana', 'c' => array ('x','y','z'));
相当于数组arr=[{a:'apple'},{b:'banana'},"Toyota"]  ,$a['b']//banana   $a['c'][1]//y

九。

请求
$input = $request->all();//all 方法以 数组 形式获取到所有输入数据
$name = $request->input('name');//input 方法通常被用来获取用户输入数据,获取指定输入值
$name = $request->input('name', 'Sally');//input 方法的第二个参数传入一个默认值。当请求的输入数据不存在于此请求时,返回该默认值

十。数据库

table 查表

select 查询,Select 子句

where 对应查询条件,第一个参数是字段的名称。第二个参数是运算符,它可以是数据库所支持的任何运算符。最后,第三个参数是要对字段进行评估的值。

要验证「votes」字段的值等于 100 的查询
$users = DB::table('users')->where('votes', '=', 100)->get();

pluck 方法包含单个字段值的集合,可以使用 

$titles = DB::table('roles')->pluck('title');

chunk 方法需要操作数千条数据库记录,每次只取出一小块结果,并会将每个块传递给一个 

闭包 处理。

join 方法的第一个参数是你要 join 数据表的名称,而其它参数则指定用来连接的字段约束

JOIN 按照功能大致分为如下三类:

  • INNER JOIN(内连接,或等值连接)
  • LEFT JOIN(左连接):
  • RIGHT JOIN(右连接): 

$users = DB::table('users') ->join('contacts', 'users.id', '=', 'contacts.user_id') ->join('orders', 'users.id', '=', 'orders.user_id') ->select('users.*', 'contacts.phone', 'orders.price') ->get();

LIKE 子句是在 MySQL 中用于在 WHERE 子句中进行模糊匹配的关键字。它通常与通配符一起使用,用于搜索符合某种模式的字符串。

LIKE 子句中使用百分号 %字符来表示任意字符,类似于UNIX或正则表达式中的星号 *。

如果没有使用百分号 %, LIKE 子句与等号 = 的效果是一样的。

$users = DB::table('users') ->where('name', 'like', 'T%') ->get();

十。Redis 是一款开源且先进的键值对数据库。由于它的键指向的数据包含了 字符串哈希列表集合 和 有序集合 这些数据类型,因此常被用作数据结构服务器。

十一:

1.-》get() 获取所有数据

2.-》get(xx)获取

十二。循环

1.foreach (数组变量 as 数组内容)

2.foreach (数组变量 as 数组内容指针前=> 数组内容指针后)

x=array(1=>"Google","ddfdf"=>"Runoob",3=>"Taobao");foreach(x=array(1=>"Google", "ddfdf"=>"Runoob", 3=>"Taobao"); foreach (x as key=>key => value) { echo "key 为 " . key.",对应的value".key . ",对应的 value 为 ". value ."
"; }