• TP5 学习总结--控制器的,请求,ECHO和return的区别,TP5伪静态


    控制器,就是一个PHP文件,每个php文件中,有NUCF四大部分。

    N 表示namespace
    U 表示 use
    C 表示class
    F 表示function方法

    TP5的控制器文件,有四部分组成,NUCF,再次记忆一下。

    获取请求的参数有三种方法

    $_POST
    $_GET
    tp5,推荐使用request类中的param方法,这样的好处是,TP对请求做了一些验证,更安全更高效

    $this->request->param()
    

    echo和return的区别

    项目中碰到的问题,本来是想在控制器直接return $xml的($xml是一段xml格式的代码),但是测试却发现什么都没有输出。换成echo $xml;就成功了,所以特地百度了一下:

    1、从关键词意思上看:

    echo 是输出字符串到浏览器

    return主要是用于函数,返回一个值

    2、echo 主要用于:php对浏览器的输出;

    return主要用于处理函数的返回值

    3、在大多数情况下,echo 和return的结果都是一样的。但如果出现函数嵌套或者函数比较多的情况,

    echo会无效或者发生错误。所以处理函数的返回或者输出还是用return好。

    4、比如我项目中碰到的这个问题,因为要在浏览器输出内容,所以用echo比较合适。如果是需要一个可以被其它函数调用的返回值的话,建议还是用return.

    php键值对就是数组吗

    键值对,是关联数组

    TP5 伪静态

    可以看到,伪静态,是定义了不同情景模式的处理方法。
    1.其中有cond和rule,是一起出现的。cond情景,rule处理方法,规则。
    2.$表示参数
    3.!表示非
    4. d 表示目录
    5.f 表示文件

    伪静态apache伪静态规则

    <IfModule mod_rewrite.c>
      Options +FollowSymlinks -Multiviews
      RewriteEngine On
    
      RewriteCond %{REQUEST_FILENAME} !-d
      RewriteCond %{REQUEST_FILENAME} !-f
      RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L]
    </IfModule>
    

    nginx伪静态规则

    location / {
        if (!-e $request_filename){
            rewrite  ^(.*)$  /index.php?s=$1  last;   break;
        }
    }
    
  • 相关阅读:
    递归算法
    linux下如何使用split
    什么是OPTEE-OS
    ubuntu 18.04 64bit如何编译安装内核
    ubuntu 18.04 64bit没有声音如何解决
    如何解决ubuntu报的错误:You must put some 'source' URIs in your sources.list
    linux下如何安装解压工具rar
    如何将一个已有的仓库推送到一个空的新仓库中
    ubuntu 18.04 64bit下如何安装python开发工具jupyter
    ubuntu 18.04 64bit下如何安装python开发工具jupyterhub
  • 原文地址:https://www.cnblogs.com/cn-oldboy/p/12963088.html
Copyright © 2020-2023  润新知