PHP学习笔记(一)


1、PHP基础1:数据类型、常量、字符串、运算符

  • String、Integer、Float、Boolean、Array、Object、Null
  • echo "这是一个", "字符串,", "使用了", "多个", "参数。";    //多参数
  • 定义字串:echo <<<EOF ....... EOF;    //结束需要独立一行且前后不能空格
  • 整型可表示十进制, 十六进制( 以 0x 为前缀)或八进制(前缀为 0)
  • 变量定义 :$x;    //函数内部使用全局变量加global,局部变量在全局中保存加static
  • 数组:$cars=array("Volvo","BMW","Toyota");
  • var_dump($cars);    //var_dump函数
  • PHP大小写敏感
  • 常量:define("GREETING", "欢迎访问 Runoob.com", true);    //全局的
  • 拼接两个字符串:echo $txt1.$txt2;    //.并置运算符
  • strlen()函数返回字符串长度,strpos()函数字符串中查找指定文本
  • 数组$a、数组$b合并:$a + $b
  • 三元运算符:$username = $text ? $text : 'nobody'
  • or ||、and && 逻辑运算符,效果一样但优先级不一样 ,&& >= > and

2、PHP基础2:循环、数组、全局变量、魔术常量、语言特性、继承、抽象、构造/析构函数、命名空间

  • if (条件)
    {
        条件成立时要执行的代码;
    }

  • switch语句
  • 数组:一般数组,关联数组(key=>value)
  • 数组排序
  • 超级全局变量:$GLOBALS全局组合数组,$_SERVER服务器信息数组,$_REQUEST收集HTML表单提交的数据,$_POST,$_GET
  • while语句
  • for循环,froeach()
    foreach ($array as $value){}
  • 函数function(params)
  • 魔术常量:__LINE__文件中的当前行号,__FILE__文件的完整路径和文件名, __CLASS__,__FUNCTION__,__NAMESPACE__
  • 命名空间
  • 面向对象:构造函数、析构函数
    function __construct() {
           print "构造函数\n";
           $this->name = "MyDestructableClass";
       }
    
       function __destruct() {
           print "销毁 " . $this->name . "\n";
       }
  • 访问控制:
    • public(公有):公有的类成员可以在任何地方被访问。
    • protected(受保护):受保护的类成员则可以被其自身以及其子类和父类访问。
    • private(私有):私有的类成员则只能被其定义所在的类访问。
  • 抽象类:abstract class className{}
  • PHP 不会在子类的构造方法中自动的调用父类的构造方法。要执行父类的构造方法,需要在子类的构造方法中调用 parent::__construct() 。
  • 伪变量 $this 在静态方法中不可用

3、PHP表单

  • $_GET 和 $_POST 变量,预定义的 $_REQUEST 变量包含了 $_GET、$_POST 和 $_COOKIE 的内容
  • HTML 表单代码如下所示。$_SERVER["PHP_SELF"]是超级全局变量,返回当前正在执行脚本的文件名;htmlspecialchars() 函数把一些预定义的字符转换为 HTML 实体。
  • <form method="post" action="<?php echo htmlspecialchars($_SERVER["PHP_SELF"]);?>">......</form>
  • 完整表单验证实例

4、PHP高级教程

  • PHP多维数组:格式化输出数组  
    print(
    "<pre>"); // 格式化输出数组 
    print_r($sites); 
    print(
    "</pre>"); 
    ?>
  • PHP日期:date("Y/m/d");// date()函数 
  • PHP包含文件:html包含文件使用include 和 require关键字包含.php文件。include包含失败警告后继续执行,require包含失败报错则停止执行。
    <?php include 'header.php'; ?>   

  • PHP文件:
    • fopen() 函数用于在 PHP 中打开文件。$file=fopen("welcome.txt","r");// 模式可以读或写、追加等
    • fclose() 函数用于关闭打开的文件
    • feof() 函数检测是否已到达文件末尾(EOF)
    • fgets() 函数用于从文件中逐行读取文件
  • PHP文件上传:表单:enctype属性定义;php上传脚本:$_FILES全局数组定义文件类型等属性($_FILES["file"]["type"] - 上传文件的类型);保存被上传的文件: move_uploaded_file($_FILES["file"]["tmp_name"], "upload/" . $_FILES["file"]["name"]);
    <form action="upload_file.php" method="post" enctype="multipart/form-data">
  • Cookie:
    • setcookie() 函数必须位于 <html> 标签之前
    • $_COOKIE["name"];// 取回cookie的值
    • isset($_COOKIE["name"]) ;// 判断是否已设置cookie
    • 删除cookie,即使cookie的有效时间变为0
    <?php
    setcookie("user", "runoob", time()+3600);
    ?>
    <html>
    .....

  • Session:
    • session_start() 函数必须位于 <html> 标签之前
    • 存储和取回 session 变量的正确方法是使用 PHP $_SESSION 变量
    • unset() 函数用于释放指定的 session 变量:
    • ession_destroy() 函数彻底销毁 session
  • session_start();
    // 存储 session 数据
    $_SESSION['views']=1;
  • 电子邮件:mail()函数
  • 错误处理:die()函数 
    // 设置错误处理函数
    set_error_handler("customError");
  • 异常处理:Exceoption()  try {} catch () {} 捕获异常 throw抛出异常 set_exception_handler('myException');// 顶层异常处理器
  • 过滤器:
    • 过滤变量:filter_var(); filter_var_array(); // 验证变量 filter_input(); filter_input_array (); // 验证输入
    • Validating 过滤器 和 Sanitizing 过滤器

    • FILTER_CALLBACK 过滤器,可以调用自定义的函数,把它作为一个过滤器来使用
    • 高级过滤器:选项和标志搭配使用可实现不同需求
  • Json: json_encode() 编码返回Json数据, json_decode() 解码返回php变量
  • PHP7新特性
阅读更多
想对作者说点什么?

博主推荐

换一批

没有更多推荐了,返回首页