php语法快速学习笔记

1.gettype() 用来获取变量的类型

2.var_dump()用来查看某个表达式的类型和值

3.定义一个字符串是用单引号,双引号会将字符串里面的特征会解析出来

4.Herodoc结构就是<<<FOOBRA XXXX  FOOBAR;理解为结构字符串。

5.字符串用.连接起来。

6.  键=>值 对。

7.unset()函数允许删除数组中的某个键。

8.数组声明的方式  $arr=array("foo"=>"bar",12=>true);

9.集合的演示

<?php

//集合显示

$colors=  array(‘red‘,‘green‘,‘been‘,‘yellow‘);

foreach ($colors as $color){

    echo "颜色有$color";
}
?>

10.对象的初始化和方法的调用

<?php
//对象的初始化
class foo{
    public function do_foo(){
         echo "方法执行了";
    }
}
$bar=new foo;
$bar->do_foo();
?>

11.回调方法

<?php
//回调函数
function first(){
    echo "第一次显示";
}
class Myclass{
    static function myfirst(){
        echo "静态方法显示";
    }
}
call_user_func(‘first‘);
//call_user_func(array(‘first‘,‘myfirst‘));
$obj=new Myclass();
call_user_func(array($obj,‘myfirst‘));
?>

12.php的变量是区分大小写的

没有加global会报错,现实结果是2

<?php
//变量的使用范围
$a=1;
$b=2;
function sum()
{
    $b=$a+$b;
}
sum();
echo $b;

?>

加了global,显示的结果是3

<?php
//变量的使用范围
$a=1;
$b=2;

function sum()
{
    global $a,$b;
    $b=$a+$b;
}
sum();
echo $b;

?>

13.静态变量

<?php
//静态变量
function Test(){
    $a=0;
    echo $a;
    $a++;
}
Test();
Test();
Test();

?>

输出的是000

<?php
//静态变量
function Test(){
    static $a=0;
    echo $a;
    $a++;
}
Test();
Test();
Test();

?>

显示输出的是012

13.可以判断变量类型的函数

gettype(),is_array(),is_float(),is_int(),is_object()和 is_string();

14.设置cookies

setcookie();还有$_cookie,$http_cookie_cars和$_request

15.定义常量(define 和 const)

define("foo","something");或者 const foo="something"

echo foo

16.魔术常量

魔术常量不区分大小写

echo __LINE__;//当前行号
echo  __FILE__;//当前文件的完整路径
echo __DIR__;//文件所在的目录
echo __FUNCTION__;//函数名称
echo __CLASS__;//类的名称
echo __METHOD__;//类的方法名
echo __NAMESPACE__;//当前命名空间的名称 

17.表达式

$a=5;

表示将值5的分配给变量$a

18.运算符

错误运算符:@ 。当放在一个php表达式前面,表明表达式可能产生的任何错误信息都被忽略掉。

执行运算符:PHP 支持一个执行运算符:反引号(``)。注意这不是单引号!PHP 将尝试将反引号中的内容作为外壳命令来执行,并将其输出信息返回(例如,可以赋给一个变量而不是简单地丢弃到标准输出)。使用反引号运算符“`”的效果与函数 shell_exec() 相同。 <?php

$output = `ls -al`;
echo "<pre>$output</pre>";
?>

数组运算符:+联合 ==相等,===全等,!=不等,!==不全等

19.控制结构

continue 后面的语句执行完后结束循环

20.php函数

匿名函数又称为闭包函数,临时创建一个没有名字的函数,经常用作回调函数的参数。

<?php
//匿名函数变量赋值

$greet=function($name){
    printf("hello %s",$name);
};

$greet(‘World‘);
$greet(‘PHP‘);
?>

注意是%s。

21。类和对象

php中的::是类中静态方法和静态属性的引用方法。

可以不用实例化对象直接使用Test::$test属性的值

extends关键字继承另一个类的方法和成员,只能单继承不能扩展多个类

被继承的方法和成员可以通过用同样的名字重新声明被覆盖,除非父类定义方法时使用了 final 关键字。可以通过 parent:: 来访问被覆盖的方法或成员。

22.自动加载对象

比如需要从Myclass1.php和Myclass2.php加载Myclass1和Myclass2类。

<?php
//匿名函数变量赋值
function __autoload($class_name){
    require_once $class_name.‘.php‘;
}
$obj=new Myclass1();
$obj=new Myclass2();
?>

23.构造函数和析构函数

<?php
//构造函数
class BaseClass{
    function __construct() {
        print "父类的构造函数";
    }
}
class SubClass extends BaseClass{
    function __construct() {
        parent::__construct();
        print "子类的构造函数";
    }
}
$obj=new BaseClass();
$obj=new SubClass();
?>

输出的结果是 “父类的构造函数父类的构造函数子类的构造函数”;

要执行父类的析构函数,必须在子类的析构函数体中显式调用 parent::__destruct()

<?php
class MyDestructableClass {
   function __construct() {
       print "In constructor ";
       $this->name = "MyDestructableClass";
   }

   function __destruct() {
       print "Destroying " . $this->name . " ";
   }
}

$obj = new MyDestructableClass();
$obj->__destruct();
?>

没有大区别

24.php的访问控制

对属性和方法的访问控制:public ,private,protected。

public 类在任何地方都可以访问到,private是其所在类访问,protected类只能被所在类访问。

25类的继承

extends

26.static 关键字

为了方便不用实例化对象也能直接访问类的成员或者方法。

<?php
class Foo {
    public static function aStaticMethod() {
        echo "hello";
    }
}

Foo::aStaticMethod();
$classname = ‘Foo‘;
$classname::aStaticMethod(); // As of PHP 5.3.0
?> 

输出结果是 hellohello

时间: 2024-10-15 21:25:52

php语法快速学习笔记的相关文章

Bootstrap快速学习笔记(2)表单系列之二

欢迎收看大奥编写的Bootstrap快速学习笔记(2)表单系列之二 本学习笔记根据[慕课网]教程修改而来,用它学习Bootstrap,将会带来全新的体验哦: 表单控件大小 表单控件状态 按钮 图像 详细介绍 表单控件大小表单控件大小可以通过给表单控件添加class类来实现,如果想要比较大,则添加input-lg类,如果想要比较小, 则添加input-sm类,但这仅是对高度进行了处理,如果要对宽度进行处理,需要在每个input控件外围添加div容器并带有col-xs-4类,并 且要在这组控件的外围

Bootstrap快速学习笔记(1)排版系列之二

欢迎收看大奥编写的Bootstrap快速学习笔记(1)排版系列之二 本学习笔记根据[慕课网]教程修改而来,用它学习Bootstrap,将会带来全新的体验哦: 表格 表格行的类 详细介绍 表格表格是Bootstrap的基础组件之一,有一个基础样式和四个附加样式以及一个响应式样式,全部通过class类来实 现,.table:基础表格,这是无论哪种类型的表格都必不可少的类:.table-striped:斑马线表格,更具可读性:.table- bordered:带边框的表格:.table-hover:鼠

Bootstrap快速学习笔记(1)排版系列之一

欢迎收看大奥编写的Bootstrap快速学习笔记(1)排版系列之一 本学习笔记根据[慕课网]教程修改而来,用它学习Bootstrap,将会带来全新的体验哦: 标题 段落 强调内容 粗体和斜体 强调相关的类 文本对齐风格 列表 代码展示 详细介绍 标题 Bootstrap重写了h1-h6标题的样式属性并自定义了.h1-.h6类,并用small标签来显示副标题 段落 Bootstrap重写了p标签的样式属性 强调内容 .lead类改变文本样式 粗体和斜体 粗体<strong><b>斜体

Bootstrap快速学习笔记(2)表单系列之一

欢迎收看大奥编写的Bootstrap快速学习笔记(2)表单系列之一 本学习笔记根据[慕课网]教程修改而来,用它学习Bootstrap,将会带来全新的体验哦: .form-control类 水平表单 内联表单 详细介绍 form-control类把该类直接添加到控件上: 1.宽度变成了100%:2.设置了一个浅灰色(#ccc)的边框:3.具有4px的圆角:4.设置阴影效果,并且元素得到焦点之时,阴影和边框效果会有所变化:5.设置了placeholder的颜色为#999 水平表单最外层form标签要

MySql基本语法(学习笔记)

MySQL语法大全_自己整理的学习笔记 select * from emp;  #注释 #--------------------------- #----命令行连接MySql--------- #启动mysql服务器 net start mysql #关闭 net stop mysql #进入 mysql -h 主机地址 -u 用户名 -p 用户密码 #退出 exit #--------------------------- #----MySql用户管理--------- #修改密码:首先在D

C#语法基础学习笔记-自增(i++、++i)

在刚刚的学习过程中,把困扰已久的问题解决了.下面来跟大家一起分享,探讨一下. i++和++i的相同点: 如:1).int  i=1;  i++;  Console.WriteLine(i); 2).int i=1;++i;Console.WriteLine(i); 通过编译运行上面两端代码,结果i最后的值都是2,i++和++i 的作用是实现变量i的自增. 不同点: 如:1).int i=1;int j=0;j=i++*2;Console.WriteLine("j的值 是{0},i的值是{1}&q

AJAX快速学习笔记

可关注我的个人微信公众号:卟野iiiiiiiya AJAX快速学习笔记: https://mp.weixin.qq.com/s?__biz=MzI0MDY0NzI3Mw==&tempkey=OTMwX2NOeUIrdzFEaThtMFBiUlJYdFhqcWViaHY1bFlQUTdmU1RrUnpkc1IzQmNfWENHVXFZb2ZLajhURlFwbzZoOF80RlA0THdQeGVYcDB2OENSdnBKcUNHdU9QRER0OWxkUE9YUGp0SU90WmwwWVl1SnJ

Java快速学习笔记01

这一波快速学习主要是应付校招笔面试用,功利性质不可避免. 学习网址: http://www.runoob.com/java/java-tutorial.html 执行命令解析: 以上我们使用了两个命令 javac 和 java. javac 命令用于将 java 源文件编译为 class 字节码文件,如: javac HelloWorld.java. 运行javac命令后,如果成功编译没有错误的话,会出现一个 HelloWorld.class 的文件. java 命令可以运行 class 字节码

Delphi基础语法的学习笔记和注意事项总结

以下是我在自学Delphi的时候,对一些注意点的简单总结,并没有什么系统性可言,只是一个学习时顺手记下的笔记,主要为了当时加深对知识的印象,并没有希望能在以后的复习和使用Delphi中有什么多大的参考作用.    缺少Delphi的各种数据类型的介绍……知识点. 1.     Delphi编译器自动对全局变量符初值.当程序开始时,所有的整型变量赋值为0,浮点数赋值为0.0,指针为null,字符串为空等等,因此,在源代码中不必对全局变量赋0初值 2.     Object Pascal允许在con