日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

thinkphp5 内置接口开发与使用

發(fā)布時(shí)間:2023/12/13 php 23 豆豆
生活随笔 收集整理的這篇文章主要介紹了 thinkphp5 内置接口开发与使用 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

最近的一個(gè)項(xiàng)目在用tp5,對(duì)于tp3都幾乎沒(méi)用過(guò)的我來(lái)說(shuō)~~~

tp5最好的一點(diǎn)就是對(duì)接口的單獨(dú)封裝,只要嚴(yán)格按照要求一步一步來(lái)就可以成功了

  • 開(kāi)啟命令行:
  • 配置環(huán)境變量
  • 安裝tp5項(xiàng)目
  • cmd進(jìn)入項(xiàng)目目錄,運(yùn)行php think,出現(xiàn)如下內(nèi)容,則表示命令行開(kāi)啟成功

    具體指令參考手冊(cè) https://www.kancloud.cn/manual/thinkphp5/122951
  • 創(chuàng)建自定義命令行(接口)注意命名空間問(wèn)題

  • 配置command.php文件,目錄在application/command.php <?php

    return [
    'app\api\controller\shell\控制器名稱',
    ];
  • 創(chuàng)建命令類文件(接口文件),地址application/controller/shell/文件名稱(駝峰命名)
  • 編輯文件
    <?php namespace app\home;    // 此處開(kāi)發(fā)文檔上寫的是app\home\command;實(shí)際上,去掉command才可以正常跑,還沒(méi)有弄明白究竟是怎么回事 use think\console\Command; use think\console\Input; use think\console\Output; class Test extends Command { ? ? protected function configure() ? ? { ? ? ? ?
       //設(shè)置參數(shù)$this->addArgument('email', Argument::REQUIRED); //必傳參數(shù)$this->addArgument('mobile', Argument::OPTIONAL);//可選參數(shù)//選項(xiàng)定義$this->addOption('message', 'm', Option::VALUE_REQUIRED, 'test'); //選項(xiàng)值必填$this->addOption('status', 's', Option::VALUE_OPTIONAL, 'test'); //選項(xiàng)值選填$this->setName('test')->setDescription('Here is the remark '); ? ? } ? ?
  • ?????? protected function execute(Input $input, Output $output) ? ? { ?

                //獲取參數(shù)值$args = $input->getArguments();$output->writeln('The args value is:');print_r($args);         //獲取選項(xiàng)值$options = $input->getOptions();$output->writeln('The options value is:');print_r($options);$output->writeln('Now execute command...');$output->writeln("End..");

              }

            }

    注意只有在配置中設(shè)置了參數(shù),同時(shí)在execute中用封裝的方法$input->getArguments();獲取參數(shù)才能夠精確獲取到需要的參數(shù),否則如果只是在execute中直接print($input)出現(xiàn)的是一個(gè)超級(jí)復(fù)雜的數(shù)據(jù)對(duì)象

    ?

  • ?

    測(cè)試-命令幫助-命令行下運(yùn)行? php think

    ?

  • 運(yùn)行test命令? php think test

    同時(shí)可以將參數(shù)跟在命令后面當(dāng)做參數(shù)傳入? php think test 2017-06-05

    這樣就完成了一個(gè)簡(jiǎn)單的接口

    但是在我剛剛進(jìn)入命令行的時(shí)候,執(zhí)行命令行中的tp5帶命令,報(bào)了一個(gè)奇怪的錯(cuò)誤igbinary 版本錯(cuò)誤,原因是我安裝的igbinary與php版本不匹配,重新安裝就好了,但是目前還不知道igbinary和命令行運(yùn)行之間有什么必然聯(lián)系

  • ?

    轉(zhuǎn)載于:https://www.cnblogs.com/wangfengzhu/p/6946376.html

    總結(jié)

    以上是生活随笔為你收集整理的thinkphp5 内置接口开发与使用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

    如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。