为您找到搜索结果:1377个
【TP框架】包括TP3.1和3.2,自带缓存使用机制
原文章出处:http://blog.163.com/liwei1987821@126/blog/static/172664928201422133218356/写在开始:缓存变量和session变量都是全局性质的,TP都是默认开启的,设置了之后可以在任何你想要的地方直接调用1、动态缓存 Cache缓存类(使用之前,你需要下载Xcache模块、PHP的Xcache驱动以及一系列配置,自行搜索)<code><?php//$cache = Cache::getInstance('缓存方式','缓存参数'); //理解为实例化,其实是对缓存类域内进行操作/***缓存方式包含: memcache;redis;Xcache;file等方式(默认File类型)*缓存参数: 缓存有效期, 缓存列队长度**///(demo:)$Cache=Cache::getInstance("Xcache",array("expire"=>60));$cache->set('key',$value,3600);//存缓...
TP3.2框架,实现空模块、空控制器、空操作的页面404替换||同步实现apache报错404页面替换
一,前言 一.1)以下代码是在TP3.0版本之后,URL的默认模式=》PATHINFO的前提下进行的。(通俗点,URL中index.php必须存在且正确)代码和讲解如下:1、空模块解决:http://localhost:8095/index.php/Home/index/index输入http://localhost:8095/index.php/Home23/index/index 会报错,解决-》》》1)在公共配置文件添加: 'MODULE_ALLOW_LIST' => array('Home','Admin'), 'DEFAULT_MODULE' => 'Home',2)空模块要结合下面的2和3,一起,所以要看完哦。上面的'DEFAULT_MODULE' 很重要,因为当你模块名写错的时候,tp的基类已经把错的模块名当成了控制器名,就会变成Home/Home2...
使用PHP做移动端 api接口开发方法(适用于TP框架)
1. [代码]使用TP框架时放在common文件夹下文件名就叫function.php ?1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798<?php /***************************api开发辅助函数**********************/ /** *@paramnull$msg 返回正确的提示信息 *@paramflagsuccessCURD操作成功 *@paramarray$data 具体返回信息 *Functiondescript:返回带参数,标志信息,提...
基于Python的接口自动化测试框架
公司内部的软件采用B/S架构,目的是进行实验室的数据存储、分析、管理。大部分是数据的增删改查,但是由于还在开发阶段,所以UI的变化非常快,难以针对UI进行自动化测试,那样会消耗大量的精力与时间维护自动化脚本,对于小团队来说就得不偿失了。 针对此种情况,选用接口测试较为有效。 针对接口测试的自动化工具也很多,例如SoupUI、Postman、robotframework,甚至jmeter这样的性能测试工具都可以进行接口测试。 robotframework测试框架有很多的第三方库可以使用,采用的是填表的方式进行,较容易上手,但是无法深入底层的了解客户端与服务器的交互过程。jmeter这样的专注性能测试的工具,进行接口测试,有点大材小用的感觉而且无法生成测试报告。但是这些工具灵活性不够,也不完全适用于被测系统。 综上考虑,决定自己开发一个简单的框架,优点是足够灵活,可以随时根据需求进行变更,后台使用的是python+flask进行开发,此次选用python2.7.11进行框架的开发,python开发的速度很快,且容易上手,丰富的第三方库,大大加快了开发速度和难度。 由于是框架,所以...
Android-BaseLine基础性开发框架
比较基础性的Android快速开发框架Android-BaseLine,Android-BaseLine实现的功能远远没有其他框架多,一个很好的框架不应该显得太过臃肿,很多功能一般情况下我们可能用不到,真正适合自己的框架还是应该在开发的过程中一步步总结和提炼,所以Android-BaseLine只是提供了一般的APP开发会需要的基本功能。经历了几次重构,废弃了原先自己设计的一些功能模块,使用了业界比较好用的一些框架,同时借鉴了一些框架的思想,打造了Android-BaseLine这样一个轻量级的开发框架。 Github地址:https://github.com/hiphonezhu/Android-BaseLineAndroid-BaseLine框架,提供以下基础功能1、升级Volley框架,增加对多附件上传及进度更新回调的支持2、提供统一的网络请求业务逻辑框架,使用EventBus和Volley协作完成3、提供统一的异步耗时任务执行框架,使用EventBus作为通知中心来协作完成4、提供日志管理框架,对日志存储的大小、数量、格式做了规范处...
爬虫入门【11】Pyspider框架入门—使用HTML和CSS选择器下载小说
首先我们要安装好pyspider,可以参考上一篇文章。从一个web页面抓取信息的过程包括:1、找到页面上包含的URL信息,这个url包含我们想要的信息2、通过HTTP来获取页面内容3、从HTML中提取出信息来4、然后找到更多的URL,回到第2步继续执行~我推荐一部小说给大家《恶魔法则》。今天我们从网上将这部小说的内容按照章节下载下来。小说目录的url为https://www.ybdu.com/xiaoshuo/4/4646/我们现在控制台命令行中输入pyspiderall,命令,然后打开浏览器,输入http://localhost:5000/。点击右面的Create按钮,输入项目名称,点击创建即可。【插入图片,创建项目】创建项目之后,在浏览器出现一个框架,左面是结果显示区,最主要的是一个run命令。右面是我们输入代码的内容。由于这个代码编辑界面不太友好,建议我们将代码拷贝到pycharm中,编辑好或者修改好之后再复制回来运行。【插入图片,空白项目内容】我们如果访问https页面,一定要添加validate_cert=False,否则会报SSL错误。这一步主要是获取目录页。这个方法会获取...
爬虫入门【10】Pyspider框架简介及安装说明
Pyspider是python中的一个很流行的爬虫框架系统,它具有的特点如下:1、可以在Python环境下写脚本2、具有WebUI,脚本编辑器,并且有项目管理和任务监视器以及结果查看。3、支持多种数据库4、支持定义任务优先级,自动重试链接。。。5、分布式架构等等优点。pyspider的设计基础是:以python脚本驱动的抓取环模型爬虫。教程:http://docs.pyspider.org/en/latest/tutorial/文档:http://docs.pyspider.org/发布版本:https://github.com/binux/pyspider/releasesfrompyspider.libs.base_handlerimport*classHandler(BaseHandler):crawl_config={}@every(minutes=24*60)defon_start(self):self.crawl('http://scrapy.org/',callback=self.index_page)@config(age=10*24*60*60)defindex_pa...
Celery 框架学习笔记
在学习Celery之前,我先简单的去了解了一下什么是生产者消费者模式。在实际的软件开发过程中,经常会碰到如下场景:某个模块负责产生数据,这些数据由另一个模块来负责处理(此处的模块是广义的,可以是类、函数、线程、进程等)。产生数据的模块,就形象地称为生产者;而处理数据的模块,就称为消费者。单单抽象出生产者和消费者,还够不上是生产者消费者模式。该模式还需要有一个缓冲区处于生产者和消费者之间,作为一个中介。生产者把数据放入缓冲区,而消费者从缓冲区取出数据,如下图所示:生产者消费者模式是通过一个容器来解决生产者和消费者的强耦合问题。生产者和消费者彼此之间不直接通讯,而通过消息队列(缓冲区)来进行通讯,所以生产者生产完数据之后不用等待消费者处理,直接扔给消息队列,消费者不找生产者要数据,而是直接从消息队列里取,消息队列就相当于一个缓冲区,平衡了生产者和消费者的处理能力。这个消息队列就是用来给生产者和消费者解耦的。------------->这里又有一个问题,什么叫做解耦?解耦:假设生产者和消费者分别是两个类。如果让生产者直接调用消费者的某个方法,那么生产者对于消费者就会产生依赖(也就是耦合...
微信机器人框架- wechaty
项目介绍wechaty(https://github.com/wechaty/wechaty)是一款开源的微信SDK,它基于微信公开的API,对接口进行了一系列的封装,提供一系列简单的接口,然后开发者可以在其之上进行微信机器人的开发。在跟作者沟通试用以后,发现其中有着非常多的应用场景,比如:1)如果你的好友众多,如何管理和维护好友分组;2)如何快速有序地处理海量聊天信息,并区分重要性;3)如何处理海量的聊天组,特别是微信可以任意建组,长期以后会出现非常多的聊天组;4)能否可以自动智能地进行聊天回复5)……1快速上手wechaty使用node编写,所以支持几乎所有的平台,wechaty的hello-world只需要6行代码即可实现聊天记录的动态收集。为了使用方便作者还进行了docker化的封装,结合docker绝对是一个不错的选择。Step1:新建一个mybot.js,内容如下:const{Wechaty}=require('wechaty')Wechaty.instance()//Singleton.on('scan',(url,code)=>cons...
java 测试框架
项目开发过程中使用的单元测试框架有Junit、TestNG以及Mockito,Junit和TestNG使用的比较多,Mockito最近才开始使用。TestNG与JUnit的相同点1.使用annotation,且大部分annotation相同。2.都可以进行单元测试(Unittest)。3.都是针对Java测试的工具。TestNG与JUnit的不同点:1.JUnit只能进行单元测试,TestNG可以进行单元测试,功能测试,端到端测试,集成测试等。2.TestNG需要一个额外的xml配置文件,配置测试的class、method甚至package。3.TestNG的运行方式更加灵活:命令行、ant和IDE,JUnit只能使用IDE。4.TestNG的annotation更加丰富,比如@ExpectedExceptions、@DataProvider等。5.测试套件运行失败,JUnit4会重新运行整个测试套件。TestNG运行失败时,会创建一个XML文件说明失败的测试,利用这个文件执行程序,就不会重复运行已经成功的测试。---------------------https://blog.csd...
easyui框架下table,每行实现上下移动
easyui框架的控件功能做得很好,用得最多的是table,很多时候我们需要对每行的数据进行上下移动的排序,这里主要通过js函数来实现,请往下看。//上移 functiondanganconf_scan_upload_maintable1_up()//上移 { varobj_node=$('#danganconf_scan_upload_maintable1').datagrid('getSelections');//获取选择的项 if(!obj_node||obj_node.length!=1)//判断是否选中的是只有一项 &...
php 爬虫框架
发现两款不错的爬虫框架,极力推荐下:phpspider一款优秀的PHP开发蜘蛛爬虫官方下载地址:https://github.com/owner888/phpspider官方开发手册:https://doc.phpspider.org/QueryList使用jQuery选择器来做采集,告别复杂的正则表达式;QueryList具有jQuery一样的DOM操作能力、Http网络操作能力、乱码解决能力、内容过滤能力以及可扩展能力;可以轻松实现诸如:模拟登陆、伪造浏览器、HTTP代理等意复杂的网络请求;拥有丰富的插件,支持多线程采集以及使用PhantomJS采集JavaScript动态渲染的页面。官方下载地址:https://github.com/jae-jae/QueryList官方开发手册:https://doc.querylist.cc/无论从事什么行业,只要做好两件事就够了,一个是你的专业、一个是你的人品,专业决定了你的存在,人品决定了你的人脉,剩下的就是坚持,用善良專業和真诚赢取更多的信任。...