知识总结(2022/6)

目录

  • PHP方法名后加 :?类名
  • PHP中 ??与 ?:
  • MySQL 模糊查询_
  • MySQL ifnull 函数
  • PHP配置解决跨域CORS
  • PHP scandir()

PHP方法名后加 :?类名

表示返回值类型,?表示允许为空,eg:

    function funTest():?string
    {
        $str = 'abc';
        $array = array(1,2,3);
        return $array;
    }

    function echoTest()
    {
        echo "echo:".$this->funTest();
    }

此时访问 echoTest 方法报错
Return value of App\HttpController\Test::funTest() must be of the type string or null, array returned
返回类型必须为 string 或 null
与方法名:类的区别:
:?课返回定义的返回值类型及 null,而:只可返回定义的返回值类型

PHP中 ??与 ?:

$page??1
// 如果 page 在且不为null,返回 page,否则返回 1
isset($page)?$page:1
//与 ??结果相同

MySQL 模糊查询_

查询 name 中第二个字母为 r 的数据

select name from user where name = '_r%'
// 第三个字母为 r 的:__r(2个)  _ 占位符

MySQL ifnull 函数

ifnull(字段名, value)
在计算时,若遇到值为 null 的数据,把其当作 value 再进行计算

PHP配置解决跨域CORS

添加响应头

$response->withHeader("Access-Control-Allow-Origin", '*');
// 支持什么来源的跨域  * 表示所有
$response->withHeader("Access-Control-Allow-Method", 'POST, GET, OPTIONS');
// 支持哪些方法跨域 用 , 隔开
$response->withHeader("Access-Control-Allow-Headers", 'Content-Type');
// 跨域请求暴露的字段
$response->withHeader("Access-Control-Allow-Credentials", 'true');
// 跨域请求是否包含cookie 默认不包含

PHP scandir()

语法:

scandir(directory,sorting_order);

用法:返回指定目录中的文件
知识总结(2022/6)_第1张图片
返回值:数组



$dir = scandir('../');
$dir_desc = scandir('../', 1);
print_r($dir);
echo "降序排序:\n";
print_r($dir_desc);

返回值:

Array
(
    [0] => .
    [1] => ..
    [2] => .git
    [3] => .gitignore
    [4] => .idea
    [5] => App
    [6] => Doc
    [7] => EasySwooleEvent.php
    [8] => Log
    [9] => README.md
    [10] => bootstrap.php
    [11] => composer.json
    [12] => composer.lock
    [13] => dev.php
    [14] => easyswoole
    [15] => produce.php
    [16] => vendor
)
降序排序:
Array
(
    [0] => vendor
    [1] => produce.php
    [2] => easyswoole
    [3] => dev.php
    [4] => composer.lock
    [5] => composer.json
    [6] => bootstrap.php
    [7] => README.md
    [8] => Log
    [9] => EasySwooleEvent.php
    [10] => Doc
    [11] => App
    [12] => .idea
    [13] => .gitignore
    [14] => .git
    [15] => ..
    [16] => .
)

你可能感兴趣的:(知识总结,php)