PHP 零碎笔记

PHP函数

var_dump($var)打印变量信息

$export = var_export($var) 将变量内容以字符串形式返回

array_keys() 返回数组中所有keys
array_values() 返回数组中所有values

exit( );终止程序/脚本 执行;

in_array($var,$arr);判断是否在数组中

file_exists($filename);判断文件/文件夹是否存在

如果前端无法解析,有可能是content-type不对

header("Content-Type:application/json"); //增加头部,content-type为json

cookie&session

Keyword : 多台服务器,session共享

  • cookie:服务器用来识别用户的机制

  • session:为每一个访客创建唯一的ID(UID),用于存储变量.UID存储在cookie中创导.

  • cookie和session必须插在所有标签和任何输出之前

1. cookie

$expire 是cookie保存的时间


当客户端将cookie返回的时候,可以通过$_COOKIE获取cookie

cookie缺点:cookie欺骗?

2. session

  • 开启会话,会自动检测是否有相对应的UID
//开始会话
 

 
 

session变量的存取
  • ?实现一个页面的访问次数


session变量的销毁

类与对象

:: 范围解析操作符

调用静态成员,类常量,静态方法

  • 类的内部,self::$var1, parent::$var2
  • 子类中调用父类被覆盖的方法 parent::func( ) ,类似于oc中子类中调用父类的方法[super func],super.func
访问控制
  • protected 只允许子类访问
  • private 只允许类内访问
  • public 公开
抽象类 abstract class
  • 抽象类不能被实例化
  • 如果类中有一个方法被声明为抽象的,这个类必须声明为抽象类
  • 继承一个抽象类的时候,子类必须定义父类中所有的抽象方法,这些方法的访问控制>=父类的
  • 子类继承的父类的抽象方法,可以增加参数
traits方法复用...- -
trait A {
          public function A {
                  echo "A";
          }
}

class ABC {
      use A;//使用A (trait)
}

$var1 = new ABC();
$var1->A;//输出  A
  • 同时用多个traituse A,B
  • trait组合成一个新的trait...
trait hello {   
         public function sayHello() {  
              echo 'Hello ';    
         }
}

trait world {    
        public function sayWorld() { 
       echo 'World!';   
       }
} 

trait helloword {
      use hello,wolrd;
}
  • 通过抽象方法来进行强制要求,类似继承抽象类时候,抽象方法需要被覆盖(类似swift中非可选的协议方法)
getWorld();
    } 
   abstract public function getWorld();
}
class MyHelloWorld {
    private $world;
    use Hello;
    public function getWorld() {
        return $this->world;
    }
    public function setWorld($val) {
        $this->world = $val;
    }
}
?>
  • 静态方法: 和普通静态方法调用差不多

  • trait也可以用于定义属性

x;
?>

你可能感兴趣的:(PHP 零碎笔记)