Thinkphp用exp表达式执行mysql语句,查询某字段不为空is not null,自动增值

Thinkphp用exp表达式执行mysql语句,查询某字段不为空isnotnull,自动增值Thinkphp的文档经常不够完整的表达MYSQL的各种组合,isnotnull在thinkphp中就不能用“=”或者简单的eq等来表示。TP支持MYSQL不为空的array编写方式:$data=D('tablename');$map=array();$map['pic']=array('exp','isnotnull');其中的exp表示MYSQL的表达式查询,支持各种MYSQL语句的添加该写法同时支持在update中对字段进行自动增值比如:SQL语句updatetablesetdata=data+1;用THINKPHP可以表达为$data['data']=array('exp','data+1');$table->where(1)->save($data); ...

PHP开发框架Laravel优点,Laravel5.3中文文档

PHP开发框架Laravel优点Laravel的设计思想是很先进的,非常适合应用各种开发模式TDD,DDD和BDD,作为一个框架,它为你准备好了一切,composer是个php的未来,没有composer,PHP肯定要走向没落。laravel最大的特点和优秀之处就是集合了php比较新的特性,以及各种各样的设计模式,Ioc容器,依赖注入等。因此laravel是一个适合学习的框架,他和其他的框架思想有着极大的不同,这也要求你非常熟练php,基础扎实。如果你觉得laravel很困难那么原因只有一个你php基础不够好。通常觉得Laravel难学且无用的开发者中,只会PHP一门语言,或者说,没有静态编译型语言(如C/C++/Java/Go等)使用经验的开发者占绝大多数。路由和orm部分,和前端backbone之类的结合应该很契合,还是很不错的,另外composer是个很好东西,关于效率问题,web程序的运行效率从来就不在框架,而在数据库,框架那一点点消耗根本不会是什么负担。laravel框架还是蛮不错的,可以说非常全面,配合phpstorm开发还是很好的。====================...

PHP用substr截取字符串出现中文乱码问题用mb_substr

PHP用substr截取字符串出现中文乱码问题用mb_substr实例:mb_substr('截取中文乱码问题测试',0,5,'utf-8');语法:stringsubstr(stringstring,intstart[,intlength])$rest=substr("abcdef",1);//returns"bcdef"$rest=substr("abcdef",1,3);//returns"bcd"如果start是负数,传回的字符串将会从string结尾的第start个字开始。$rest=substr("abcdef",-1);//returns"f"$rest=substr("abcdef",-2);//returns"ef"$rest=substr("abcdef",-3,1);//returns"d"如果有给予参数length而且是正数时,传回的字符串将会从start传回length个字元。如果有给予参数length而且是负数时,传回的字符串将会结束于string结尾的第length个字元。$rest=substr("abcdef",1,-1);//returns"bcde...

php用jquery-ajax上传多张图片限制图片大小

php用jquery-ajax上传多张图片限制图片大小/***上传图片,默认大小限制为3M*@paramString$fileInputName*@paramnumber$size*/publicfunctionprocessUpload($fileInputName,$size=3145728){$result=array('status'=>0,'errcode'=>null,'group'=>'','path'=>'','site'=>'','size'=>0);$file=$_FILES[$fileInputName];//用filesize函数获取文件大小,filesize这个内置函数不能直接放$fileInputName或者$file['name'],要用$file['tmp_name'],或者直接用$file['size']$bytes=$file['size'];if($bytes==0||$bytes>$size){$result['status']=-1;$result['size']=$bytes;return$resul...

PHPExcel读取excel文件示例

PHPExcel读取excel文件示例PHPExcel最新版官方下载网址:http://phpexcel.codeplex.com/PHPExcel是一个非常方便生成Excel格式文件的类,官方下载包中带有大量如何生成各种样式excel文件的示例,但没有一个读取Excel文件的完整例子,下面是读取的例子:读取Excel的内容主要有两个选择:PHPExcelReader、PHPExcel。PHPExcelReader比较轻量级,仅支持Excel的读取,实际上就是一个Reader。但是可惜的是不能够支持Excel2007的格式(.xlsx)。PHPExcel比较强大,能够将内存中的数据输出成Excel文件,同时还能够对Excel做各种操作,下面主要介绍下如何使用PHPExcel进行Excel2007格式(.xlsx)文件的读取。下载PHPExcel后保存到自己的类文件目录中,然后使用以下代码可以打开Excel2007(xlsx)格式的文件:require_once'/libs/PHPExcel-1.8.0/Classes/PHPExcel.php';//修改为自己的目录echo'<p...

PHP获取6位数随机数,获取redis里面不存在的6位随机数(设置24小时过时)

PHP获取6位数随机数PHPstr_shuffle()函数str_shuffle()函数随机打乱字符串中的所有字符。语法str_shuffle(string)参数描述string必需。规定要打乱的字符串。用php的str_shuffle函数:<?php$randStr=str_shuffle('ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890');$rand=substr($randStr,0,6);?>------------------------------实例:获取redis里面不存在的6位随机数(设置24小时过时)$port_number='1605D1BCC6C8027BA0223147652D67D6';$send_number=$this->getSixRandNumber();$rs=$this->redis->setKeyValue('ports:'.$send_number,$port_number);//以秒为最小单位$this->redis->setTimeout('ports:'.$send_...

升级到php7相关问题,日请求过亿QQ会员活动平台PHP7升级实践

升级到php7相关问题,日请求过亿QQ会员活动平台PHP7升级实践日请求过亿:QQ会员活动平台PHP7升级实践http://mp.weixin.qq.com/s?__biz=MjM5MjAwODM4MA==&mid=2650686562&idx=1&sn=52d6a5f88dc0cdfe51d277ae2f04ed9d&scene=23&srcid=0601WtyqrhmQ6rwabIjWsOpP#rdhttp://url.cn/2IG4KnF腾讯部分高流量的应用也升级到php7了php7已经出来一年多了,不算新了腾讯那么大流量的应用都升级了,小网站还怕什么切到PHP7,我们是如何节省一百万美元的?-PHPERZ中文资讯站http://www.phperz.com/article/16/0316/205722.html---------------------------------------ThinkPHP5.0.0RC3版本-ThinkPHP框架http://www.thinkphp.cn/down/756.htmlThinkPHP5.0版...

php json_decode() 如果想要强制生成PHP关联数组,json_decode()需要加一个参数true

phpjson_decode()该函数用于将json文本转换为相应的PHP数据结构。下面是一个例子:$json='{"foo":12345}';$obj=json_decode($json);print$obj->{'foo'};//12345通常情况下,json_decode()总是返回一个PHP对象,而不是数组。比如:$json='{"a":1,"b":2,"c":3,"d":4,"e":5}';var_dump(json_decode($json));结果就是生成一个PHP对象:object(stdClass)#1(5){  ["a"]=>int(1)  ["b"]=>int(2)  ["c"]=>int(3)  ["d"]=>int(4)  ["e"]=>int(5)}如果想要强制生成PHP关联数组,json_decode()需要加一个参数true:$json='{"a":1,"b":2,"c":3,"d":4,"e":5}'; var_dump(json_decode($json,true));结果就生成了一个关联数组:array(5){ ...

ThinkPHP CURD mysql操作

ThinkPHPCURD操作ThinkPHP提供了灵活和方便的数据操作方法,对数据库操作的四个基本操作(CURD):创建、更新、读取和删除的实现是最基本的,也是必须掌握的,在这基础之上才能熟悉更多实用的数据操作方法。CURD操作通常是可以和连贯操作配合完成的。下面来分析下各自的用法:(下面的CURD操作我们均以M方法创建模型实例来说明,因为不涉及到具体的业务逻辑)http://doc.thinkphp.cn/manual/curd.html创建(Create)在ThinkPHP中使用add方法新增数据到数据库(而并不是create方法)。add写入(新增)数据到数据库用法add($data='',$options=array(),$replace=false)参数data(可选):要新增的数据,支持数组和对象,如果留空取当前数据对象options(可选):操作表达式,通常由连贯操作完成,默认为空数组replace(可选):是否允许写入时更新,默认为false(个别数据库支持)回调接口写入前_before_insert(&$data,$options)写入成功_after_ins...

ThinkPHP问题收集:模板中使用U方法时无法嵌套大括号,For标签,插入数据,新增的表字段缓存问题

ThinkPHP模板中使用U方法时无法嵌套大括号需要在control里面用U方法赋值给变量传到模版如:{:U('/Blog/comment/',array('id'=>$id)}$comment_url=U('/Blog/comment/',array('id'=>$id));$this->assign('comment_url',$comment_url);模版使用:<ahref="{$comment_url}">xxx</a>=======================================直接用:$data['username']="xxx";$data['nickname']="xxx";$result=M("adm_activity")->add($data);可能会出现缓存,插入相同的数据,需要用$data=array();$data['username']="xxx";$data['nickname']="xxx";或$data=array({'username'=>"xxx",'nickname'=>...

修改apache配置文件去除thinkphp url中的index.php

修改apache配置文件去除thinkphpurl中的index.php例如你的原路径是http://localhost/test/index.php/index/add变成http://localhost/test/index/add如何去掉index.php呢?1、httpd.conf配置文件中加载了mod_rewrite.so模块//在APACHE里面去配置#LoadModulerewrite_modulemodules/mod_rewrite.so把前面的警号去掉2、AllowOverrideNone将None改为AllOptionsNone改为OptionsAll注意:在APACHE里面去配置(注意其他地方的AllowOverride也统统设置为ALL)<Directory"D:/wampp/apache/cgi-bin">AllowOverridenone改AllowOverrideALLOptionsNone改OptionsAllOrderallow,denyAllowfromall</Directory><Directory"cgi-bin...

thinkphp标签实现bootsrtap轮播carousel实例

thinkphp标签实现bootsrtap轮播carousel实例由于轮播carousel第一个div需要设置active样式才能正常显示,上面的圆点也同样需要数字,使用volist标签在循环的同时可以取得下标(foreach,for标签实现不了)<divclass="container"><!--carousel--><divid="carousel-example-generic"class="carouselslide"data-ride="carousel"><olclass="carousel-indicators"><volistname="bopic"id="xt"><lidata-target="#carousel-example-generic"data-slide-to="{$i-1}"class="<ifcondition="$ieq1">active</if>"></li></volist></ol><divclass="ca...

ThinkPHP函数详解:M方法

ThinkPHP函数详解:M方法http://www.thinkphp.cn/simple/functions_m.htmlM方法用于实例化一个基础模型类,和D方法的区别在于:1、不需要自定义模型类,减少IO加载,性能较好;2、实例化后只能调用基础模型类(默认是Model类)中的方法;3、可以在实例化的时候指定表前缀、数据库和数据库的连接信息;D方法的强大则体现在你封装的自定义模型类有多强,不过随着新版ThinkPHP框架的基础模型类的功能越来越强大,M方法也比D方法越来越实用了。M方法的调用格式:M('[基础模型名:]模型名','数据表前缀','数据库连接信息')我们来看下M方法具体有哪些用法:1、实例化基础模型(Model)类在没有定义任何模型的时候,我们可以使用下面的方法实例化一个模型类来进行操作://实例化User模型$User=M('User');//执行其他的数据操作$User->select();这种方法最简单高效,因为不需要定义任何的模型类,所以支持跨项目调用。缺点也是因为没有自定义的模型类,因此无法写入相关的业务逻辑,只能完成基本的CURD操作。$User=M(...

ThinkPHP CURD方法盘点:where方法

ThinkPHPCURD方法盘点:where方法查询最常用但也是最复杂的where方法,where方法也属于模型类的连贯操作方法之一,主要用于查询和操作条件的设置。where方法的用法是ThinkPHP查询语言的精髓,也是ThinkPHPORM的重要组成部分和亮点所在,可以完成包括普通查询、表达式查询、快捷查询、区间查询、组合查询在内的查询操作。where方法的参数支持字符串和数组,虽然也可以使用对象但并不建议。字符串条件使用字符串条件直接查询和操作,例如:$User=M("User");//实例化User对象$User->where('type=1ANDstatus=1')->select();最后生成的SQL语句是SELECT*FROMthink_userWHEREtype=1ANDstatus=1如果使用3.1以上版本的话,使用字符串条件的时候,建议配合预处理机制,确保更加安全,例如:$Model->where("id=%dandusername='%s'andxx='%f'",array($id,$username,$xx))->select();或者使...

Thinkphp中查询复杂sql查询表达式,如何表达MYSQL中的某字段不为空is not null?

Thinkphp中查询复杂sql查询表达式,如何表达MYSQL中的某字段不为空isnotnull?先上两种实现方式的实例:$querys["house_type_image"]=array('NEQ','NULL');//判断字段不为空//$querys["house_type_image"]=array('exp','isnotnull');//其中的exp表示MYSQL的表达式查询,支持各种MYSQL语句的添加-------------------------Thinkphp中查询复杂的情况需要使用查询表达式,使用格式:$map['字段名']=array('表达式','查询条件');表达式不分大小写,支持的查询表达式有下面几种,分别表示的含义是:表达式含义EQ等于(=)NEQ不等于(<>)GT大于(>)EGT大于等于(>=)LT小于(<)ELT小于等于(<=)LIKE模糊查询[NOT]BETWEEN(不在)区间查询[NOT]IN(不在)IN查询EXP表达式查询,支持SQL语法示例见Thinkphp的官方文档。官方文档中没有查询某字段为空的例子,试...
首页上一页...271272273274275...下一页尾页