php学习

简介

php

  • PHP(PHP:Hypertext Preprocessor):超文本预处理器,一种通用开源脚本语言。

  • php脚本在服务器上执行

php文件

  • PHP 文件可包含文本、HTML、JavaScript代码和 PHP 代码

  • PHP 代码在服务器上执行,结果以纯 HTML 形式返回给浏览器

  • PHP 文件的默认文件扩展名是 ".php"

作用

  • 生成动态页面内容

  • 创建、打开、读取、写入、关闭服务器上的文件

  • 收集表单数据

  • 发送接收cookies

  • 添加、删除、修改数据库中的数据

  • 限制用户访问网站页面

  • 加密数据

php语法规则 

  • php标记<?php?>

  • 指令分隔符 ;

  • 注释   //注释  /*注释*/

  • 多个空格:&nbsp

    echo "123&nbsp&nbsp&nbsp&nbsp&nbsp456";
  • 编码设置

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

输出文本指令:

echo

  • echo 或 echo()

  • 显示多个值的时候可以用逗号隔开。只支持基本类型,布尔型除外,echo true的时候显示1,echo false的时候啥都没有。

  • 字符串可以包含 HTML 标签

    echo "<h2>PHP 很有趣!</h2>";
    echo "Hello world!<br>";

print

  • print 或 print()

  • 不支持逗号分隔多个显示变量的语法

  • 字符串可以包含 HTML 标签

    print "Hello world!<br>";
    print "我要学习 PHP!";

echo和print的区别

  • echo - 可以输出一个或多个字符串;没有返回值

  • print - 只允许输出一个字符串,返回值总为 1

  • 使用echo,有多个参数的时候,不能使用括号,即echo $arg1,$arg2是正确的,echo($arg1,$arg2)会导致解析错误

print_r()

  • 打印字符串和数字。

  • 数组以括起来的键和值得列表形式显示,并以Array开头。

  • print_r 是函数,不仅可以打印变量的的值,还能显示变量类型,而且也可以显示数组和对象这样复杂的变量类型。print_r() 将把数组的指针移到最后边。使用 reset() 可让指针回到开始处。

  • 但print_r()输出布尔值和NULL的结果没有意义,因为都是打印"\n"。因此用var_dump()函数更适合调试。

var_dump()

  • 判断一个变量的类型与长度,并输出变量的数值

  • 如果变量有值输的是变量的值并回返数据类型。

  • 此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

变量$:

  • 存储信息的容器

  • $+变量的名称

  • 命名可以字母、下划线 “-”、汉字进行开头,不能以数字、特殊字符、关键字开头。变量名不允许包含空格

  • PHP不用声明变量的数据类型,PHP会自动把变量转换为自动的数据类型

  • 使用memory_get_usage来查看当前Php消耗的内存

  • 使用gettype查看变量类型

define("pi",3.14);//定义常量
$name = "zhangsan";
    echo "$name"."<br>";
    echo "<h1> my name is: <h1>".$name."<br>";
    echo gettype($name)."<br>";
    echo memory_get_usage($name)."<br>";

PHP的字符串连接符用(.)来表示。

echo  "hello world"."hihihihi";

常量

  • 常见的系统常量有

  • FILE_:php程序文件名。当前文件在服务器的物理位置

  • LINE:PHP程序文件行数,当前代码在第几行

  • PHP_VERSION :当前解释器的版本号

  • PHP_OS:执行当前PHP版本的操作系统名称

echo __FILE__."<br>";
echo __LINE__."<br>";
echo PHP_VERSION."<br>";
echo PHP_OS."<br>";

变量类型

  1. boolean

  2. integer

  3. float

  4. string

复合类型

  1. array

  2. object

  3. callable

特殊类型

  1. resource

  2. NULL

  • //打开文件
        $file_hande = fopen("D:\\text.text","r");
        //连接数据库
        $con=mysql_connect("localhost","root","root");
        //建立100*100画布
        $img=imagecreate(100,100);
    //fopen 打开文件,得到返回值的就是资源类型
        $file_handle = fopen("D:\\text.text","r");
        if ($file_handle){
            //w'hile循环输出每行的文字
            while(!feof($file_handle)){//判断是否到最后一行
                $line = fgets($file_handle);//读取一行文本
                echo $line."<br>";//输出一行文本
            }   
        }
        fclose($file_handle);//关闭文件
class Girl
    {
        public $name = "zhangsan";
    }
    $mygirl = new Girl();
    
    echo gettype($mygirl);

分支结构

  1. if-else

    <?php
    if(条件一){
         //分配服务器完成任务A
    }else if(条件二){
         //分配服务器完成任务B
    }
    ...
    else {
    	//分配分配服务器完成任务N
    }
    ?>
    $names = ['zhangsan','liis','wangu'];
        if(count($names)>3)
            echo "名字个数大于3<br>";
        else
            echo "名字个数小于或等于3,个数为:".count($names)."<br>";
  2. switch

    <?php
    switch (条件)
    {
    case 条件值一:
      //任务一
      break;
    case 条件值二:
      //任务二
      break;
    ... ...
    case 条件n
        //任务n
        break;
    default:
      //默认任务
    }
    ?>
    $name = "zhangsan";
        switch ($name)
        {
            case "zhangsan":
                echo "my name is :zhangsan<br>".$name."<br>";
                break;
            case "lisi":
                echo "my name is : lisi<br>".$name."<br>";
                break;
            default:
                echo "i dont have name.";
                break;
        }
  3. for

    for(初始化;循环条件;递增项){
    	//执行任务
    }
    $names = ['zhangsan','liis','wangu'];   
        for($i=0;$i<count($names);$i++){
            echo $names[$i]."<br>";
        }
  4. foeach

    $names = ['zhangsan','liis','wangu'];
        foreach($names as $name)
        {
            echo $name."<br>";
        }
    $students = array(
    '01' => "zhangsan",
    '02' => "wangwu",
    '03' => "lisi",
    );
    	foreach($students as $key => $v)//获取值
    	{
    		echo $key.":".$v."<br>";//打印id:姓名
    	}
  5. wile

    while(条件){
    	//执行任务
    }
    $names = ['zhangsan','liis','wangu'];   
        $i=0;
        while($i<count($names)){
            echo $names[$i]."<br>";
            $i++;
        }
  6. do -while

    do{
    	//执行任务
    }while(条件)
    $names = ['zhangsan','liis','wangu'];
        foreach($names as $name)
        {
            echo $name."<br>";
        }

while与do-while区别

  • while先判断条件是否成立,后执行循环,do...while先执行一次任务,再判断是否继续执行循环,也就是说do...while至少会执行一次任务。

  • 当条件为FALSE时,while中的任务会一次也不执行,do...while中的任务会执行1次。

练习:打印99乘法表

echo "******九九乘法表******<br>";
    $i=1;
    $j=1;
    for($i=1;$i<10;$i++)
    {
        for($j=1;$j<=$i;$j++)
        {
            echo $j."*".$i."=".$i*$j;
            echo "  ";
        }
        echo "<br>";
    }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值