PHP7 新特性 学习

PHP7的新特性大概浏览下,还是能在工作的效率上有很大益处的。1,性能提升这个我就不做测试了,哈哈2,类型声明classStudent{publicfunction__construct(){$this->name='durban';}}$student=newStudent();functionenroll(Student$student,array$classes){foreach($classesas$class){echo"Enrolling".$student->name."in".$class."\n";&n...

Laravel 之 Left Join 方法使用

举例子如下:$models=static::where('user_id',$userId)->leftJoin('product_gift',function($join){$join->on('product_gift_exchange_order.prd_id','=','product_gift.prd_id');$join->on('product_gift_exchange_order.gift_code','=','product_gift.gift_code');})->orderBy('product_gift_exchange_order.autokid','DESC')->get(['product_gift_exchange_order.autokid','product_gift_exchange_order.ctime','product_gift_exchange_order.exchange_amount','product_gift.g...

php 之 multipart/form-data 方式 Post 提交数据

post的curl库,模拟post提交的时候,默认的方式multipart/form-data,这个算是post提交的几个基础的实现方式。$postUrl='';$postData=array('user_name'=>$userName,'identity_no'=>$idCardNo);$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$postUrl);curl_setopt($curl,CURLOPT_USERAGENT,'Opera/9.80(WindowsNT6.2;Win64;x64)Presto/2.12.388Version/12.15');curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);//stopverifyingcertificatecurl_setopt($curl,CURLOPT_RETURNTRANSFER,true);curl_setopt($curl,CURLOPT_POST,&nb...

php 之 x-www-form-urlencoded 方式 Post 提交数据

php的curl库进行post提交还是蛮方便的。但是提交方式不同,contentType不同导致你的api是否能接收到数据也是个变数,这里来个简单的实例。$postUrl='';$postData=array('user_name'=>$userName,'identity_no'=>$idCardNo);$postData=http_build_query($postData);$curl=curl_init();curl_setopt($curl,CURLOPT_URL,$postUrl);curl_setopt($curl,CURLOPT_USERAGENT,'Opera/9.80(WindowsNT6.2;Win64;x64)Presto/2.12.388Version/12.15');curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,false);//stopverifyingcertificatecurl_setopt($curl,&...

PHP 函数分享 之 解压缩base64 压缩文件

解压缩base64压缩文件,稍微解释一下,比如你有一个pdf文件,使用软件压缩成了.gz格式的文件,然后再把这个文件做成了basa64String传输给某个人,比如这个人就是我,好吧,问题来了,我们要实现一个过程,就是反解这个文件,将base64string转成.gz文件,然后再把.gz文件解压。functionactionPdf(){$pdf_base64=BASE64_DATA_PATH;//GetFilecontentfromtxtfile$pdf_base64_handler=fopen($pdf_base64,'r');$pdf_content=fread($pdf_base64_handler,filesize($pdf_base64));fclose($pdf_base64_handler);...

Laravel Blade 模版 变量使用

LaravelBlade模版对于我这样的初玩者来说,确实有点挑战。习惯了,django的直接定义函数就能直接使用的方法,在Blade中还是没有找到如何使用,这里简单介绍下我自己查到的使用方法。起始Laravel的Blade是支持php的原生写法的,比如我有个输出的变量,是需要进行逻辑判断在输出的。<?php$heading='/images/default.png';?>@if($user->headimg)@if(strncmp($user->headimg,'http://',strlen('http://'))==0)<?php$heading=$user->headimg;?>@else<?php$headimg="http://7u2r0u.com1.z0.glb.clouddn.com/".$user->headi...

PHP 版本的startsWith 和 endsWith

JS处理字符串的时候,有些地方还是很方便的。但是PHP也不是很逊色,也有对应的解决方案。functionstartsWith($haystack,$needle){returnstrncmp($haystack,$needle,strlen($needle))===0;}functionendsWith($haystack,$needle){return$needle===''||substr_compare($haystack,$needle,-strlen($needle))===0;}不理解strcmp和substr_compare的可以自己去查查文档

PHP 之 Composer 的 NpmRepository错误

最近进行了一次composer的update操作。然后在我自己的项目里面运行了。composerinstall的操作,结果出现了很多的错误以前从未见过。ClassFxp\Composer\AssetPlugin\Repository\NpmRepositorydoesnotexistThe"yiisoft/yii2-composer"pluginrequirescomposer-plugin-api1.0.0,thisWILLbreakinthefutureanditshouldbefixedASAP(require^1.0forexample).[ReflectionException]ClassFxp\Composer\AssetPlugin\Repository\NpmRepositorydoesnotexist[ErrorException]DeclarationofFxp\Composer\AssetPlugin\Repository\AbstractAssetsRepository::whatProvides()shouldbecompatiblewithComposer\Repository\ComposerRepository::whatProvides(Composer\DependencyResolver\Pool$pool,$name,$bypassFilters=false)解决方案就是...

关于Laravel5教程的纠错

教程地址:http://www.golaravel.com/laravel/docs/5.1/quickstart/#validation有兴趣的自己的可以去看下。没事自己,也看了下,这个最近比较火的PHP框架,总体先不做评价,给那些入门后看了这个教程很困惑的人吧,包括我在内。这个教程里面说的Validation,也不知道是哪个版本的,从链接地址上看出来是5.1这个版本的,但是我用的是5.2的版本,应该不是那种不兼容的问题。只是在添加路由的过程中,只给除了如何添加路由但是没有说明白,如何去放置这些路由,由于这个是直接在routes.php中直接添加路由的,可能需要其他一切设置吧,毕竟这里的全局errors不应该就只是一个routes能解决的,我觉得。先说下问题吧,说...

快速激活最新JetBrains公司系列产品

IntelliJIDEA开源社区提供了如下通用激活方法:注册时选择Licenseserver然后输入框填写:http://idea.lanyus.com/然后点击OK,就搞定了。JetBrains注册码计算:idea.lanyus.com/===================截至目前为止,上面的方式已经无效了===========可以进入http://idea.lanyus.com/自己去找方案我这里把我使用的过程需要注意的点说下IntelliJIDEALicenseServer使用方法首先下载指定版本的IntelliJIDEALicenseServer,解压文件夹,进入文件夹,跟自己的系统的情况指定指定的文件,对于linux或者unix系统,最好到终端去执行。如果是win的话就请随意吧。可以指定端口指定用户的哟。╰─➤./IntelliJIDEALicenseServer_darwin_amd64-p ...