Blogger Information
Blog 20
fans 0
comment 0
visits 12326
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template
使用curl请求聚合数据的驾考宝典题库接口数据, composer 常用的指令与mvc pathinfo 路由映射
缘亦
Original
892 people have browsed it

1.使用curl请求聚合支付的驾考宝典题库接口数据, 并渲染到页面上;

话不多说,先上演示截图

代码
  1. <?php
  2. // curl 初始化 获取一个curl句柄 在后端发起网络请求
  3. $ch = curl_init();
  4. $url = 'http://v.juhe.cn/jztk/query?';
  5. $key = '044e7c9159cfe85265f9ec38fb49ac4b';
  6. $subject = '1';
  7. $model = 'c1';
  8. $testType = 'order';
  9. $query = http_build_query( ['key'=>$key, 'subject'=>$subject, 'model'=>$model, 'testType' => $testType] );
  10. curl_setopt( $ch, CURLOPT_URL, $url.$query );
  11. curl_setopt( $ch, CURLOPT_HTTPGET, true );
  12. // 启用时会将头文件的信息作为数据流输出。
  13. curl_setopt( $ch, CURLOPT_HEADER, false );
  14. // true 将curl_exec()获取的信息以字符串返回,而不是直接输出。
  15. curl_setopt( $ch, CURLOPT_RETURNTRANSFER, true );
  16. $apiData = curl_exec( $ch );
  17. curl_close( $ch );
  18. ?>
  19. <!DOCTYPE html>
  20. <html lang = 'en'>
  21. <head>
  22. <meta charset = 'UTF-8'>
  23. <meta http-equiv = 'X-UA-Compatible' content = 'IE=edge'>
  24. <meta name = 'viewport' content = 'width=device-width, initial-scale=1.0'>
  25. <title>C1驾照考试题库</title>
  26. </head>
  27. <style>
  28. table{color:#333;background-color:#efefef;width:900px;text-align:left;margin:auto;}td{border:2px solid #005691;padding:10px;line-height:30px;}table caption{font-size:1.8rem;margin-bottom:15px;}table thead tr:first-of-type{background-color:#005691;color:white;}.nostyle{border:0px;}.nostyle td{border:0px;}</style>
  29. <body>
  30. <script>
  31. const obj = <?=$apiData?>;
  32. // console.log( obj );
  33. // 创建表格元素
  34. const table = document.createElement('table');
  35. // 标题
  36. table.createCaption().textContent ='C1驾照考试题库';
  37. // 创建表头, 并尾部添加新行, 将表头参数填入
  38. const tr = table.createTHead().insertRow(-1);
  39. tr.insertCell(0).innerText = '题库列表';
  40. obj.result.forEach(item=>{
  41. // 先生成一个新行, 并插入到表尾
  42. const row = table.insertRow(-1);
  43. // 遍历题库中所有对象数组,并填充到生成的单元格中
  44. row.insertCell(0).innerHTML = "<table class='nostyle' withd=100%><tr><th colspan='2'><b>"+item.id+"、"+item.question+"</b></th></tr><tr><td>"+"A:"+item.item1+"<br>"+"B:"+item.item2+"<br>"+"C:"+item.item3+"<br>"+"D:"+item.item1+"<br>"+"</td><td><img src="+item.url+"></td></tr><tr><td colspan='2'><b>正确答案:</b><span style='color:red;font-weight: bold;'>"+String.fromCharCode(+item.answer+ 64) +"</span> <br><b>说明: </b>"+item.explains+"</td></tr></table>";
  45. // 将生成的该行插入到表格元素中
  46. table.appendChild(row);
  47. });
  48. // 最后将表格添加到页面中
  49. document.body.appendChild(table);
  50. </script>
  51. </body>
  52. </html>

2. composer 常用的指令有哪些?

1、composer查看全局设置:composer config -gl

2、查看已存在的包:composer info

3、搜索包:composer search ***

4、安装包:composer require或者composer install

对于 require 和 install 是不相同的,require 会把包的信息添加到 composer.json 文件中并进行 install 。
而 install 是直接从 composer.json 或 composer.lock 文件中提取依赖信息,然后进行安装。
不编辑composer.json的情况下安装库
你可能会觉得每安装一个库都需要修改composer.json太麻烦,那么你可以直接使用require命令。如:

composer require "foo/bar:1.0.0"

5、清理缓存:composer clearcache

6、设置composer镜像为国内阿里云镜像:

  1. composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ //全局配置
  2. composer config repo.packagist composer https://mirrors.aliyun.com/composer/ //单独项目配置

7、Composer 卸载某个扩展或者删除某个包

composer remove vendorName/packageName

这只是删除了依赖关系,不会自动加载,但其依赖包还在vender文件夹里,可手动删除

8、Mac上卸载Composer:

  1. where composer 或者type composerbrew info composer
  2. rm -rf /usr/bin/composer
  3. rm -rf /usr/local/bin/composer.phar

9、在composer.json进行修改后使之生效:

composer dump-autoload

10、此命令用来对指定包的指定版本进行 zip/tar 归档。它也可以用来归档你的整个项目,不包括 excluded/ignored(排除/忽略)的文件。

php composer.phar archive vendor/package 2.0.21 --format=zip

3. mvc pathinfo 路由映射是怎么实现的

暂未做,待定.

Correcting teacher:PHPzPHPz

Correction status:qualified

Teacher's comments:
Statement of this Website
The copyright of this blog article belongs to the blogger. Please specify the address when reprinting! If there is any infringement or violation of the law, please contact admin@php.cn Report processing!
All comments Speak rationally on civilized internet, please comply with News Comment Service Agreement
0 comments
Author's latest blog post