加载中...

php

PHP

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。

 

php标记:当php开始解析一个文件时,会寻找起始和结束标记,也就是<?php和?>

分隔符号,php在每个语句结束必须添加一个英文分号( ; ),不加一定会报错。

 

注释方式:单行注释(//)多行注释(/*  */)# 这也是单行注释 支持C、C++、unix shell风格等注释方法,但保持js注释风格即可。

 

PHP  echo 和 print 语句

输出方式:echo和print命令表示输出,写在echo与print后面的代码能直接被显示出来。

两个方法有无括号都可以进行输出,print返回值:1 echo 比 print 稍快,因为它不返回任何值。

 

php变量

描述:变量是所表示的值可发生改变的量

            在php中变量用美元符($)后面跟变量名来表示

语法:$变量名

注意:(1)大小写是敏感的。

(2)php变量可以直接在写出变量名后直接使用,而不需要像js的“声明赋值”过程。

(3) PHP 有三种不同的变量作用域:local(局部)global(全局)static(静态)

注:全局变量与局部变量在程序结束后回全部取消,而静态变量在下次程序运行仍然是上一次最后调用的值。

 

php数据类型:字符串、整数、浮点数、逻辑、数组、对象、NULL。

字符串(String):引号内任何文本,可以使用单号或者双引号

 

整数(Integer):1.必须至少一个数字(0-9);2.不能含有逗号或空格;3.不能带小数;4.正负均可;5可以使用十进制、八进制(前缀是0)、十六进制(前缀是0x)

 

浮点数(Float):浮点数是有小数点或指数形式的数字。

逻辑(Boolean):逻辑是 true 或 false。

 

数组(Array):数组在一个变量中存储多个值。

对象(Object):对象是存储数据和有关如何处理数据的信息的数据类型。

空值(NULL):表示无值

 

php运算符:

  1. 算术运算符:+(加)、-(减)、*(乘)、/(除)、%(取余)
  2. 赋值运算符:PHP 中基础的赋值运算符是 "="。这意味着右侧赋值表达式会为左侧运算数设置值。(注:可以在赋值号面前加运算符,比如 x+=y 等于 x=x+y,以此类推!)
  3. 字符串运算符:php中使用“.”来进行字符拼接,而不是“+”,也可以使用“.=”串接赋值
  4. 比较运算符:==(等于)、===(全等(完全相同))、!=(不等于)、<>(不等于)、!==(不全等(完全不同))、> (大于)、< (小于)、>=(大于或等于)、<=(小于或等于)
  5. 逻辑运算符:and(与)、or(或)、xor(异或,当两个结果不同时为true)、&&(与)、||(或)、!(非)
  6. 递增/递减运算符:递增:$x++(先运算,后加1)     、++$x(先加1,后运算) 递减类似,只是操作换成减(-)

注:数组的相加(联合)使用“+”符号进行运算,其他的运算符与上相同,数组的运算不会覆盖重复值。

 

php基础方法

$x =1;     //声明一个变量

phpinfo();  //显示PHP的当前信息

echo "HelloWord";       //输出内容

echo gettype($cars);     //返回变量或者表达式的类型

 

var_dump($cars);  //返回变量类型和值

 

strlen("Hello world!");   //得到字符串长度

 

strpos("Hello world!","world");     //搜索字符或文本,成功找到返回位置,否则返回false

 

define("talk","Hello world!"); //定义常量,第一个为常量名字,第二个为常量值,第三个为设置是否对常量名字大小写敏感,默认false

注:常量自动贯穿脚本全局

 

If(判断语句的三种写法)

if($x == $y){   //判断是否等于,等于则运行

echo "Yes";

}

if($x == $y){  //判断是否等于,等于则运行

echo "Yes";

}else{      //不等于时运行的代码

echo "No";

}

If($x == $y){ //判断是否等于,等于则运行

       Echo “Yes”;

}elseif($x >= $y){  //判断是否大于,等于则运行

 

}elseif{     //不等于时运行的代码 }

 

switch语句:

switch($x){      //传递一个变量(常量)或表达式

       case 1:           //对case的值进行对比,相同则运行

              echo "Numer 1";   //为真则运行的代码

              break;    //每段case代码块末尾必须加break声明结束,否则会跳到下面代码运行,影响程序运行

       case 2:

              echo "Numer 2";

              break;

       case 3:    //case结构可以写多个

              echo "Numer3";

              break;

       default:   //如果没有与case相同则运行default,default只能写一个

              echo "No";

}

 

while($x<=5){        //判断$x是否小于等于5,如果等于则为true,运行下面代码,运行完毕再进行一次判断

       echo "这个数字是:$x<br/>";    //为真则运行的代码

       $x++;      //在最后进行变量递增(自加一),如果不加类似的代码,则程序一直运行,卡死在循环当中

}

do{  //不论条件是否满足,先运行一次程序,再进行判断循环

       echo "这个数字是:$x<br/>";

       $x++;

}

while($x <= 5);

 

for($x = 0; $x <= 9; $x++){         //循环输出

       echo "数字是:$x <br/>";

}

 

$x =array("wangming","lisi","zhangsan");   //添加一个数组

 

foreach($x as $value){          //此循环使用于数组,用来遍历数组,获取每个值。

       echo $value;

}

 

function writeMsg(){     //声明一个函数

       echo "Hello world!";     //函数内的代码需要调用才会运行

}

writeMsg();     //调用无参函数

 

function writeMsg($name){  //声明一个有参函数,调用时,需要传递参数

       echo "Hello $name ";

       return null;     //设置函数的返回值 ,可以不写

}

注:return可以不写,但是写的话要在函数代码末尾,return一运行,返回值代表函数结束,将不会运行下面的代码

writeMsg("lisi");     //调用有参函数

 

 

$x =array("wangming","lisi","zhangsan");   //添加一个数组

 

$cars[0]="Volvo";  //将值添加到数组当中,并指定索引

 

echo count($x);     //返回数组的长度(元素数量)

 

$age =array("jho" => 18, "Ben" => 32, "peter" => 23);   //创建一个关联数组

 

$age['lisi'] =21;      //也可以这样添加

 

foreach($age as $name =>$value ){   //使用foreach循环遍历关联数组

       echo "key=".$name,"    value=".$value;

       echo "<br/>";

}

 

sort($sort);     //升序排列

rsort($sort);    //降序排列

 

asort($student);     //根据值对数组进行升序排列

ksort($student);     //根据键对数组进行升序排列

 

arsort($student);    //根据值对数组进行降序排列

krsort($student);    //根据键对数组进行降序排列

 

php类和对象,属性与关键字

class Person{         //定义一个类

    public $peoName ='';   //定义公共的属性(变量)

    private $age = 18;        //定义私有的属性

    function showSlef(){      //定义函数(方法)

        echo "你好!";

    }

    public function reveal(){       //定义一个公共的方法,去调用私有的属性或函数,从而实现外部调用

        echo $this->age;         //重点使用$this->调用的函数

    }

}

$student = new Person;      //实例化对象

echo $student->showSlef();        //使用->调用方法

$student->reveal();      ->实现调用私有方法(属性也可以)

 

php类的属性与方法修饰符:

public(公共,不写默认这个方法)、protected(受保护)、private(私有)

 

class person{

    const study ="Hello"; //定义一个常量,一经定义无法修改

    static $studys ="world";    //定义静态变量,可以修改

}

echo person::study; //使用类名直接使用类名::常量名调用

echo person::$studys;   //调用静态变量

//注:1.常量和静态变量可以直接使用类名::常量名的方式进行调用,也可以实例化后用对象调用 

    //2.静态变量只运行一次,先运行一次,再实例化对象,静态变量仍然是上次运行的值

 

class student extends person{   //使用extends继承父类

}

echo student::$studys;  //直接调用父类的静态变量

 

//$students = new student; //实例化子类

//$students->Test();     //调用父类的方法

 

 

php后台get与post请求处理

(0)$_POST这个内置对象,表示接收到的前端发送过来的post请求数据包

(1)$_GET这个内置对象,表示接收到的前端发送过来的get请求数据包

(2)echo 代表返回前端指定数据

(3)json_encode(对象),来将数组或对象等复杂值转换成json格式

例:

       //接受并处理有参的ajax请求

       $successArr = array('mag'=>'ojbk','info'=>$_GET);

       echo json_encode($successArr);  //将发送过来的get数据返回去

      

       //接受并处理post请求

       $successArr =array('mag'=>'ojbk','info'=>$_POST);

       echo json_encode($successArr);  //将发送过来的post数据返回

 

 

php mysql数据库操作

//注:mysqli_connect(数据库地址,数据库账号,密码,数据库名),数据库连接格式

 

对数据库查询:

$con = mysqli_connect('localhost','root','root','db');  //连接数据库

if($con){  //判断是否连接成功

       mysqli_query($con,'set names utf8');  //防止数据包含中文时出现乱码的预解决

       mysqli_query($con,'set character_set_client=utf8');   //设置client(客户端)的编码为utf8,防止出现乱码情况

       mysqli_query($con,'set character_set_result=utf8');  //设置server(服务器)的编码为utf8

 

       $sql ="select * from userlist where 1";       //定义一条数据语句

       $result = $con->query($sql);      //执行数据库语句

       if($result->num_rows>0){    //如果查找不为空的话

              $info = [];       //定义一个空数组,用于存储接受的数据库信息

              //通过遍历的方式使用fetch_assoc()方法将数据一条一条存储数组

              for($i=0; $row=$result->fetch_assoc(); $i++){

                     $info[$i]=$row;

              }

              //循环结束后查询的后的数据都在数组,在这里对数组数据进行操作

              //print_r($info);

       }            

}else{

       echo "连接失败";

}

 

sql语句格式:

1. sql查询语句:Select 【字段名,或者用*代表全部】 from 【表名】where 【查询条件】

2. sql添加语句:insert into表名(字段1,字段2...)values(‘值1’,’值2’);

或:insert into 表名 values(‘值1’,’值2’) //注:这种写法需写完全值

3. sql修改语句:update 表名 set 字段1=‘新值1‘... where 条件(找数据唯一性)

注:where后面的条件可以和修改的内容相同。

4. sql删除语句:delete from 表名 where 条件(最好,找数据的唯一)

posted @ 2019-01-16 19:42  royal6  阅读(257)  评论(0编辑  收藏  举报