php基础

1.代码写在<?php?>单标签中

    单行注释://

    多行注释:  /*注释内容*/

    变量声明:$a=10;(只要以$开头的都是变量声明)

    *:路径中不要出现中文(文件夹和文件名都不要出现中文)

    *:结束的分号不能忘记 

    *:header方法: header('content-type:text/html;charset=utf-8');     

       设置文本编码

                 设置编码格式为:utf-8

            header('content-type:text/html; charset= utf-8');

       设置页面跳转

                 设置跳转到百度首页

            header('location:http://www.baidu.com');

       设置页面间隔刷新

             header('refresh:3; url=http://www.xiaomi.com');

     *:PHP变量规则:

    • 变量以$符号开头,其后是变量的名称
    • 变量名称必须以字母或下划线开头
    • 变量名称不能以数字开头
    • 变量名称只能包含字母数字字符和下划线(A-z0-9 以及_
    • 变量名称对大小写敏感
// 变量以`$`符号开头,其后是变量的名称
// 变量名称必须以字母或下划线开头
$a;
$b;
$a1;
$_abc;

// 变量名称不能以数字开头
// 变量名称只能包含字母数字字符和下划线(`A-z`、`0-9` 以及` _`)
// 下面这些是错误的变量定义
$1;
$哈哈;
$^&*;

//变量名称对大小写敏感(`$y` 与`$Y` 是两个不同的变量)
// 下面定义的两个变量是不同的,大写,小写x
$x;
$X;
  • 数据类型
  •  PHP支持的数据类型包括:字符串,整数,浮点数,布尔,数组,对象,NULLL(注:由于对象中可以使用函数,故对象的语法在下文中会提及)
    • 定义字符串时需要注意:
      • 单引号:`` 内部的内容只是作为字符串
      • 双引号:"" 如果内部是PHP的变量,那么会将该变量的值解析
    • 字符串连接:不同于JavaScript,PHP中使用.进行连接
// 字符串
$str = '123';

// 字符串连接
$str2 = '123'.'哈哈哈';

// 字符串

// 整数
$numA = 1; //正数
$numB = -2;//负数

// 浮点数
$x = 1.1;

// 布尔
$a = true;
$b = false;

// 数组
$arr = array('123',123)
  • 运算符 PHP中的运算符跟JavaScript中的基本一致,用法也基本一致

    • 算数运算符: +,-,/,*,%
    • 赋值运算符: x = y,x += y,x -= y 注:这里列举的并不完全,更为详细的PHP运算符教程请查阅w3cschool_PHP运算符
<?php 
$x=10; 
$y=6;
echo ($x + $y); // 输出 16
echo ($x - $y); // 输出 4
echo ($x * $y); // 输出 60
echo ($x / $y); // 输出 1.6666666666667
echo ($x % $y); // 输出 4
?>
  • 函数: PHP虽然系统内建了一些函数,但是这不影响我们定义自己的. 函数的作用就是在代码中可以重复使用的语法块,页面加载的时候不会执行,只有在被调用的时候才会执行
// 基础语法
function functionName() {
  这里写代码
}

// 无参数 无返回值的函数
function sayhi(){
    echo "Hello World";
}

// 有参数 无返回值的函数
function sayName($name){
    echo $name.'你好哦';
}
// 调用
sayName('小狐狸');

// 有参数,参数有默认值的函数
function sayFood($food='西兰花'){
    echo $food.'好好吃';
}
// 调用
sayFood('西葫芦');// 如果传入参数,就使用传入的参数
sayFood();// 如果不传入参数,直接使用默认值

// 有参数,有返回值的函数
function sum($a,$b){
    return $a+$b
}
sum(1,2);// 返回值为1+2 = 3
  • 对象 PHP中允许使用对象这种,自定义数据类型. 使用时必须先声明,实例化之后才能够使用
// 定义最基础的类
class Fox{

        public $name = 'jack';
        public $age = 10;
}
$fox = new $fox;
// 对象属性取值
$name = $fox->name;
// 对象属性赋值
$fox->name = '小狐狸';

// 带构造函数的对象
class fox{
    // 私有属性,外部无法访问
    var $name = '小狐狸';
    // 定义方法 用来获取属性
    function Name(){
    return $this->name;
    }
    // 构造函数,可以传入参数
    function fox($name){
    $this->name = $name
    }
}
    // 定义了构造函数 需要使用构造函数初始化对象
    $fox = new fox('小狐狸');
    // 调用对象方法,获取对象名
    $foxName = $fox->Name();

2.输出内容:

   关键字:echo '输出分的内容'

       *在输出的内容中可以写html标签,页面中只会输出标签中的内容,标签不会输出;

  print_r方法:print_r($_GET)

        *输出一个关系型数组

3.for循环语法:for($i=0;$i<10:$i++){

     循环体

}

4.字符串的拼接使用.

eg:

$num=10;

echo'我要拼接'.$num;

结果:我要拼接10

5.数组

   普通数组:$arr=array(1,2,3,'jack','rose')(元素可以是数字、字符串、对象)

           获取数组中的值:$arr[1]    结果:2

           数组中获取一个随机的值:

               array_rand(参数1,参数2)

                        参数1:随机的数组

                        参数2:取几个值

   关系型数组:$arr=array('name'=>'小王','age'=>'20')

       *: 取值的时候使用key

            eg:$arr['name']======>结果为小王

       *:key可以为数字

           eg:$nameArr=array(0=>'小王',1=>'小李')

       *:关系型数组的循环:

          foreach(数组名 as $key=>$value)

   获取数组长度的方法:count()

          count(数组名)

6.单双引号的区别

  如果只是想要单纯的输出或者定义字符串,单双引号没有区别

  如果双引号中使用的字符串名刚好和一个变量的名字一样,那么会将变量替换进去

7.php中的超全局对象

   $_GET:会将get提交的数据放置在这个关系型数组中

            *:Array([key1]=>value1 [key2]=>value2)

             获取值:

                eg:$userName=$_GET['name']

                       $passWord=$_GET['pass']

  $_POST:将post方法提交的数据放置在关系型数组中

  $_FILES:获取上传的文件    

 8.将php嵌入html标签使用

    html代码不会被更改,而php中的代码会被执行掉,将结果留在那个位置

    html页面动态化就是在需要修改的地方嵌入php标签,输出想要输出的内容即可

9.如果php文件直接在浏览器打开本地文件,会直接返回全部代码,而不会返回执行后打结果。

10.让php代码停顿一会再执行

       sleep(2)         括号内写秒

11.移动上传的文件:move_uploaded_file(要移动的文件,要移动到的位置)

12.读取文件:

     把文件读入一个字符串中:file_get_contents(url)

     把文件写入一个字符串中:file_put_contents(url)

13.分割字符串:

    explode(分隔符,字符串)生 成的结果是一个数组

14.将字符串转化为php中的对象或者数组:json_decode(string)

     将php对象转化为json格式的字符串:json_encode(obj)

             注:转化为json格式之后,再返回给浏览器,虽然中文会进行编码,在js中转为js对象时,是能够看到中文的

     print_r会将php中的对象或者数组的值转化为字符串进行解析

原文地址:https://www.cnblogs.com/luxiaoxiao/p/6357533.html