五分钟入门PHP5.6

231 阅读1分钟

一、入门

1.输出语句
echo echo();  // 常用输出语句
print_r();    // 同上
var_dump();   // 输出时变量类型和值,用于代码调试

注意:php的语法十分严格,每一条语句都必须以分号结束。

2.变量
$str = "hello,world.";  //声明变量无需关键字

变量以$符号开头(引用变量时也要带上$)
变量名必须以字母或下划线开头
变量名只能由[0-9a-zA-Z\_]组成
变量名区分大小写

3. 数据类型

String(字符串), Integer(整型), Float(浮点型), Boolean(布尔型), Array(数组), Object(对象), NULL(空值)

4. 字符串拼接
//JavaScript
str = "0" + "1";    //字符串拼接
str = `Hello, ${name}.`;    //模板字符串
//PHP
$str = "0"."1";     //字符串拼接
$str = "Hello, {$name}!";    //占位符

5. 分支语句

if,switch,for语句以及函数定义皆同js

二、数组

1.分类
  • 索引数组(下标为数字)
声明
$cars = array("大众", "宝马", "现代");
遍历
for($i = 0; $i < count($cars); $i++){
    echo "下标:{$i},数据:{$cars[$i]}<br />";
}

  • 关联数组(又名键值数组,下标为字符串,类似ES6的map数据类型)
声明
$arr = array("id" => 1, "name" => "晓明", "age" => "30");
遍历
foreach($arr as $key => $value){
    echo "下标:{$key},数据:{$value}<br />";
}

  • 全局数组
    $_GET:通过get方法提交过来的所有数据
    $_POST:通过get方法提交过来的所有数据
2.方法
count(array);   //返回数组长度
array_pop(array);   //从数组末尾取下一个元素
array_push(array, elements);     //向数组末尾添加元素
array_shift(array);     //从数组头部取下一个元素
array_unshift(array, elements);     //向数组头部添加元素
array_rand(array, n);      //从数组中随机选出n个元素,默认为1

三、前后端交互

  1. jQuery发起get/post请求
function loginSend() {
        $("#login-button").click(function () {
            $.ajax({
                type: "post",
                url: "./php/login.php",
                data: {
                    username: $("#username").val(),
                    password: $("#password").val()
                },
                success: function (result) {
                    console.log(result);
                },
                error: function (msg) {
                    console.log(msg);
                }
            })
        })
    }
  1. PHP处理请求,并返回结果
<?php
    header('content:text/html;charset="utf-8"');

    // 统一返回数据格式
    $responseData = array('code'=>0,'message'=>'');
    
	//接收前端数据
    $username = $_POST['username'];
    $passward = $_POST['password'];

    //验证表单
    if(!$username){
        $responseData['code'] = 1;
        $responseData['message'] = "用户名不能为空";
        echo json_encode($responseData);
        exit;
    }
    if(!$passward){
        $responseData['code'] = 2;
        $responseData['message'] = "密码不能为空";
        echo json_encode($responseData);
        exit;
    }
    
	//连接数据库
    $link = mysql_connect('localhost','root','123456');

	//判断是否连接成功
    if(!$link){
        $responseData['code'] = 3;
        $responseData['message'] = "数据库连接失败";
        echo json_encode($responseData);
        exit;
    }

	//设置字符集
    mysql_set_charset('utf8');

	//选择数据库
    mysql_select_db('yyy');

    //MD5加密
    $str = md5(md5(md5($passward)."zhongguo")."guangzhou");

    //准备SQL语句
    $sql = "SELECT * FROM users WHERE username = '{$username}' AND password = '{$str}'";
    
    //发送SQL语句
    $res = mysql_query($sql);

	//处理结果
    $row = mysql_fetch_assoc($res);
    if(!$row){
        $responseData['code'] = 4;
        $responseData['message'] = "用户名或密码错误";
        echo json_encode($responseData);
        exit;
    }else{
        $responseData['message'] = "登陆成功";
        echo json_encode($responseData);
    } 

	//关闭数据库
    mysql_close($link);
?>