thinkphp3 行为(behavior)分析和基本使用

 1.名词解析官方解析:来自 http://document.thinkphp.cn/manual_3_2.html#behavior_extend 行为(Behavior)是一个比较抽象的概念,你可以想象成在应用执行过程中的一个动作或者处理,在框架的执行流程中,各个位置都可以有行为产生,例如路由检测是一个行为,静态缓存是一个行为,用户权限检测也是行为,大到业务逻辑,小到浏览器检测、多语言检测等等都可以当做是一个行为,甚至说你希望给你的网站用户的第一次访问弹出Hello,world!这些都可以看成是一种行为,行为的存在让你无需改动框架和应用,而在外围通过扩展或者配置来改变或者增加一些功能。而不同的行为之间也具有位置共同性,比如,有些行为的作用位置都是在应用执行前,有些行为都是在模板输出之后,我们把这些行为发生作用的位置称之为标签(位),当应用程序运行到这个标签的时候,就会被拦截下来,统一执行相关的行为,类似于AOP编程中的“切面”的概念,给某一个切面绑定相关行为就成了一种类AOP编程的思想。1.1标签位置1) 系统核心提供...

Jenkins和Gitblit集成实现提交后自动构建

Gitblit是一个纯Java基于git的解决方案。它属于ApacheAllura等伪造软件之一,它将票务系统与webui结合在一起。我经历了一个设置过程,我想我可以帮助新用户避免痛点。使用场景你想自我托管gitrepos您想要设置Jenkins服务器以执行gitrepo推送并在这些分支上运行构建测试。您有一个域名,您可以为它设置A记录。Gitblit易于安装与詹金斯很好地融为一体轻量级-与Allura或Gitlab相比缺乏用户的自助注册功能詹金斯CI易于安装强大的插件社区这就是CircleCI,TravisCI用于他们的基础堆栈。脚步:从http://gitblit.com/下载Gitblit   对于大多数人来说,你会想要GitblitGO。按照网站上的安装说明进行操作gitblit.properties 在/data 目录中配置  文件  。一定要填写  web.canonicalUrl -需要设置Jenkins集成才能正常工作。从http://jenkins-...

php如何清除html格式并去除文字中的空格然后截取文字

PHP如何清除html格式并去除文字中的空格然后截取文字,详细分享一下处理方法(顺便对PHP清除HTML字符串的函数做了一个小结):htmlspecialchars 将特殊字元转成HTML格式语法:stringhtmlspecialchars(stringstring);传回值:字串函式种类:资料处理内容说明本函式将特殊字元转成HTML的字串格式(&....;)。最常用到的场合可能就是处理客户留言的留言版了。&(和)转成&amp; "(双引号)转成&quot; <(小于)转成&lt; >(大于)转成&gt; 此函式只转换上面的特殊字元,并不会全部转换成HTML所定的ASCII转换。htmlentities 将所有的字元都转成HTML字串语法:stringhtmlentities(stringstring); 传回值:字串 函式种类:资料处理 内容说明本函式有点像htmlspecialchars()函式,但本函式会将所有string的字元都...

linux中给PHP安装mongodb的扩展

  centos5.632bit  php5.2.17  php安装路径/usr/local/php  phpize路径/usr/bin  php-config路径/usr/bin  php.ini路径/etc/  1.首先下载php的mongodb扩展  从http://pecl.php.net/package/mongo这个网址下载mongodb的扩展源码包  wgethttp://pecl.php.net/get/mongo-1.4.5.tgz  2.解压安装包  tarzxfmongo-1.4.5.tgz  3.进入解压目录,运行phpize进行安装准备  cdmongo-1.4.5  /usr/local/php/bin/phpize  4.安装编译  上述命令运行完后,在目录下就生成了configure文件  使用./configure命令进行安装配置,然后使用make&&makeinstall进行编译安装,命令如下:  ./configure--with-php-config=/usr/local/php/bin/php-config  make&...

安装PHP sphinx扩展 sphinx-1.1.0/sphinx.c:105:2: error: too few arguments 错误

表现:/home/sphinx-1.1.0/sphinx.c:Infunction‘php_sphinx_client_read_property’:/home/sphinx-1.1.0/sphinx.c:105:2:error:toofewargumentstofunction‘std_hnd->read_property’/home/sphinx-1.1.0/sphinx.c:Infunction‘zim_SphinxClient_updateAttributes’:/home/sphinx-1.1.0/sphinx.c:1040:6:warning:passingargument2of‘memset’makesintegerfrompointerwithoutacast[enabledbydefault]/usr/include/x86_64-linux-gnu/bits/string3.h:77:1:note:expected‘int’butargume...

【整理】Linux下中文检索引擎coreseek4安装,以及PHP使用sphinx的三种方式(sphinxapi,sphinx的php扩展,SphinxSe作为mysql存储引擎)

    一,软件准备coreseek4.1 (包含coreseek测试版和mmseg最新版本,以及测试数据包【内置中文分词与搜索、单字切分、mysql数据源、python数据源、RT实时索引等测试配置】) Mysql源码包 (必须选择与你已安装mysql的版本一致)  为了避免安装中出现依赖包缺失,你需要打一句鸡血:yuminstallmakegccg++gcc-c++libtoolautoconfautomakeimakemysql-devellibxml2-develexpat-devel#或apt-getinstallmakegccg++automakelibtoolmysql-clientlibmysqlclient15-devlibxml2-devlibexpat1-dev#更多系统配置请点此传送查看 二,coreseek快速安装1,安装mmseg3##前提:需提前安装操作系统基础开发库及mysql依赖库以支持mysql数据源和xml数据源##安装mmseg$cdmmseg-3.2.14$./bo...

php操作mongodb

<?phpset_time_limit(0);$mongo=newMongo('192.168.33.50:27017');//连接远程主机22011端口$db=$mongo->test;$collection=$db->user;//for($i=0;$i<100000;$i++){//$str=getRand();//$arr=[//'id'=>$i,//'name'=>$str,//'age'=>rand(1,100)//];//$collection->insert($arr);////}$query=array('id'=>array('$lt'=>100));$cursor=$collection->find($query);var_dump($cursor);//遍历所有集合中的文档foreach($cursoras$obj){echo$obj['_id']."<br>";}functiongetRand(){$arr=range('a','z');$str=join('',$arr);$str...
代码星球 代码星球·2020-04-02

phpexcel文本格式

解决PHPExcel长数字串显示为科学计数在excel中如果在一个默认的格中输入或复制超长数字字符串,它会显示为科学计算法,例如身份证号码,解决方法是把表格设置文本格式或在输入前加一个单引号。使用PHPExcel来生成excel,也会遇到同样的问题,解决方法有三种:1、设置单元格为文本$objPHPExcel=newPHPExcel();$objPHPExcel->setActiveSheetIndex(0);$objPHPExcel->getActiveSheet()->setTitle('Simple');//设置A3单元格为文本$objPHPExcel->getActiveSheet()->getStyle('A3')->getNumberFormat()->setFormatCode(PHPExcel_Style_NumberFormat::FORMAT_TEXT);//也可以设置整行或整列的style/*//E列为文本$objPHPExcel->getActiveSheet()->getStyle('E')->get...
代码星球 代码星球·2020-04-02

phpexcel操作

<?phpinclude'./PHPExcel/PHPExcel.php';include'./PHPExcel/PHPExcel/Writer/Excel2007.php';//或者include'PHPExcel/Writer/Excel5.php';用于输出.xls的//创建一个excel$objPHPExcel=newPHPExcel();$letter=range('A','Z');//表头$header_arr=['id','标题','作者','url',];//创建人$objPHPExcel->getProperties()->setCreator("brady.wang");//最后修改人$objPHPExcel->getProperties()->setLastModifiedBy("brady.wang");//标题$objPHPExcel->getProperties()->setTitle("用户");//题目$objPHPExcel->getProperties()->setSubject("获取用户");...
代码星球 代码星球·2020-04-02

phpexcel

下面是总结的几个使用方法include'PHPExcel.php';include'PHPExcel/Writer/Excel2007.php';//或者include'PHPExcel/Writer/Excel5.php';用于输出.xls的创建一个excel$objPHPExcel=newPHPExcel();保存excel—2007格式$objWriter=newPHPExcel_Writer_Excel2007($objPHPExcel);//或者$objWriter=newPHPExcel_Writer_Excel5($objPHPExcel);非2007格式$objWriter->save("xxx.xlsx");直接输出到浏览器$objWriter=newPHPExcel_Writer_Excel5($objPHPExcel);header("Pragma:public");header("Expires:0″);header("Cache-Control:must-revalidate,post-check=0,pre-check=0&Pr...
代码星球 代码星球·2020-04-02

php爬虫 phpspider

<?php/***CreatedbyPhpStorm.*User:brady*Date:2016/12/9*Time:17:32*/ini_set("memory_limit","1024M");requiredirname(__FILE__).'/../core/init.php';$url="http://www.epooll.com/archives/806/";$html=requests::get($url);//抽取文章标题$selector="//*[@id="content"]/div[1]/div[1]/h1/a";$title=selector::select($html,$selector);//检查是否抽取到标题//抽取文章作者$selector="//*[@id="content"]/div[1]/div[1]/h6/span[1]";$author=selector::select($html,$selector);//检查是否抽取到作者//去掉作者:$author=str_replace("作者:","",$author);//发布时间$select...
代码星球 代码星球·2020-04-02

xpath php

<metahttp-equiv="Content-Type"content="text/html;charset=utf-8"/><?php$target_url="http://www.crazyant.net/1973.html";$ch=curl_init();curl_setopt($ch,CURLOPT_URL,$target_url);curl_setopt($ch,CURLOPT_FAILONERROR,true);//curl_setopt($ch,CURLOPT_FOLLOWLOCATION,true);curl_setopt($ch,CURLOPT_AUTOREFERER,true);curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);curl_setopt($ch,CURLOPT_TIMEOUT,10);$html=curl_exec($ch);if(!$html){echo"<br/>cURLerrornumber:".curl_errno($ch);echo"<br/>cURLer...
代码星球 代码星球·2020-04-02

php操作redis

redis的操作很多的,以前看到一个比较全的博客,但是现在找不到了。查个东西搜半天,下面整理一下php处理redis的例子,个人觉得常用一些例子。下面的例子都是基于php-redis这个扩展的。1,connect描述:实例连接到一个Redis.参数:host:string,port:int返回值:BOOL成功返回:TRUE;失败返回:FALSE示例:复制代码代码如下:<?php $redis=newredis(); $result=$redis->connect('127.0.0.1',6379); var_dump($result);//结果:bool(true) ?>  2,set描述:设置key和value的值参数:KeyValue返回值:BOOL成功返回:TRUE;失败返回:FALSE示例: 复制代码代码如下:<?php $redis=newredis(); $redis->connect('127.0.0.1',6379); $result=$re...
代码星球 代码星球·2020-04-02

redis auth php操作

<?php//ConnectingtoRedisserveronlocalhost$redis=newRedis();$redis->connect('192.168.33.10',6379);$redis->auth('test');echo$name=$redis->set("name","sdfs");echo$name=$redis->get("name");?>...
代码星球 代码星球·2020-04-02

nginx和php-fpm调用方式

 在开发中碰到一个问题,项目以nginx+php-fpm形式访问交互,结果访问项目时报错如下图: 提示很明确嘛,去看error.log(在nginx.conf或者vhost里头配置的,找到你对应路径即可)错误信息如下:1232017/09/1810:46:21[error]3880#0:*92connect()failed(111:Connectionrefused)   while connectingtoupstream,client:192.168.33.10,server:local.helios.com,   request: "GET/v1/room/detail.jsonHTTP/1.1",upstream: "fastcgi://127.0.0.1:9000",host: "local.helios.com"或1232017/09/18 14:30:42[crit]5375#0:*43connect()tounix:/tmp/php-cgi....
代码星球 代码星球·2020-04-02
首页上一页...598599600601602...下一页尾页