本教程仅限于CI内核使用(TP和LA内核自带Composer目录,分别是:dayrui/ThinkPHP/System/vendor和dayrui/Laravel/System/vendor)

Composer支持会自动初始化

它会自动读取文件: /vendor/autoload.php 

还可以自定义Composer目录,打开index.php写上:

define('COMPOSER_PATH', '填写绝对的autoload.php路径地址');
以QueryList类为例,如何自动加载进来呢?

1、通过QueryList官网的Composer命令下载源码到任意目录

2、将下载下来的vendor目录(这里是小写字母)复制到迅睿框架的目录:vendor/

image

确保目录结构一定要和图中的保持一致。

如果路径不对,后面会报错Class "QL\QueryList" not found。


3、新建test控制器来使用QueryList类,

dayrui/App/Test/Controllers/Test.php

控制器内容如下:

<?php namespace Phpcmf\Controllers;

use QL\QueryList;

class Test extends \Phpcmf\Common
{

    public function index() {

        //采集某页面所有的图片
        $data = QueryList::get('https://www.xunruicms.com')--->find('img')->attrs('src');
        //打印结果
        print_r($data->all());

        //采集某页面所有的超链接和超链接文本内容
        //可以先手动获取要采集的页面源码
        $html = file_get_contents('https://www.xunruicms.com');
        //然后可以把页面源码或者HTML片段传给QueryList
        $data = QueryList::html($html)->rules([  //设置采集规则
            // 采集所有a标签的href属性
            'link' => ['a','href'],
            // 采集所有a标签的文本内容
            'text' => ['a','text']
        ])->query()->getData();
        //打印结果
        print_r($data->all());
    }


}

这个例子代码是QueryList官方示例代码

4、运行程序地址:

http://www.xxxx.com/index.php?s=test&c=test&m=index
文档最后更新时间:2022-11-23 14:32:48
我来修改此文档(2) 不会操作怎么办?