随笔分类 - PHP技术
摘要:PHP 7.4.0 Released! The PHP development team announces the immediate availability of PHP 7.4.0. This release marks the fourth feature update to the PH
阅读全文
摘要:Homebrew 1.5 宣布放弃 homebrew/php, 转而使用homebrew/core维护, 详见https://brew.sh/2018/01/19/homebrew-1.5.0/ 于是php扩展在homebrew/php搜索不到了, 于是我重新装了homebrew/core中的php
阅读全文
摘要:MAC OSX Homebrew安装方法也很简单:打开终端,然后输入命令 对,就是这么简单一条命令就可以将神器Homebrew安装好. 安装MongoDB MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB是一个介于
阅读全文
摘要:先说什么是Swagger, Swagger的使用目的是方便优美的呈现出接口API的各种定义, 生成API文档, 包括参数, 路径之类. 有时后端改了API的参数或者其他设置, 前端直接看这个Swagger UI就可以, 方便项目管理和团队协作. 官网: http://swagger.io/ 参数文档
阅读全文
摘要:我的YII2版本是2.0.7, 设置多语言时和其他教程有不同的地方, 所以整理如下 1. 在一个controller里面写一个调用i18n的语句, 比如actionIndex echo \Yii::t('app', 'whatisthis'); 现在进入这个页面, 页面输出whatisthis 2.
阅读全文
摘要:yii2 Class 'app\controllers\AccessControl' not found 一般是命名空间问题, 写成\yii\filters\AccessControl::className(), yii2想要新增第三方vendor, 修改composer.json, 加入了"zir
阅读全文
摘要:先下载PHP扩展Xdebug https://xdebug.org, 可以复制自己的phpinfo粘贴到https://xdebug.org/wizard.php中, 会生成需要下载的版本, php.ini的设置语句. 下载好之后放入php目录的ext文件夹中, 然后设置php.ini, 在最后加上
阅读全文
摘要:属性: public function __get($name) // 这里$name是属性名 { $getter = 'get' . $name; // getter函数的函数名 if (method_exists($this, $getter)) { return $this->$getter(
阅读全文
摘要:PHP裁剪图片$src_path = '1.jpg';//创建源图的实例$src = imagecreatefromstring(file_get_contents($src_path)); //裁剪开区域左上角的点的坐标$x = 100;$y = 12;//裁剪区域的宽和高$width = 200...
阅读全文
摘要:$arr[$i]['FirstName'] = $d_first_name;$arr[$i]['MiddleName'] = $d_middle_name;$arr[$i]['LastName'] = $d_last_name;$arr[$i]['Company'] = $d_company;$ar...
阅读全文
摘要:yii2也是依赖于composer, 就像laravel, 所以先安装composer, 如果安装不上composer可以看laravel安装的文章.安装好composer之后安装一个插件composer global require "fxp/composer-asset-plugin:1.0.0...
阅读全文
摘要:先要装一个composer, 如果不会装请看这里composerwindows可以直接下载composer-setup.exe, 如果安装失败提示"Unable to connect to getcomposer.org", 尝试VPN或更改本机DNS地址用VPNFQ,或者修改DNS为国外的DNS,...
阅读全文
摘要:Magento是一个php电子商务系统.内部模块化.创建模块流程Magento系统模块app/code/core/Mage其中每一个子目录都是一个单独的模块自己创建的模块放在下面路径app/code/local/Packagename自创的新模块应该包含以下目录结构app/code/local/Pa...
阅读全文
摘要:php Ajax 局部刷新:HTML部分 Ajax动态显示时间 当前时间: PHP部分<?php header("cache-control:no-cache,must-revalidate"); header("Content-Typ...
阅读全文
摘要:function base64url_encode($plainText) { $base64 = base64_encode($plainText); $base64url = strtr($base64, '+/=', '-_,'); ...
阅读全文
摘要:工厂模式提到的最多, 用途也最广. 简单说就是: 定义一个用户创建对象的接口. 把创建对象的过程封装起来.工厂类是指包含一个专门用来创建其他对象的方法的类,工厂类在多态性编程实践中是至关重要的,它允许动态的替换类,修改配置,通常会使应用程序更加灵活,熟练掌握工厂模式高级PHP开发人员是很重要的。工厂...
阅读全文
摘要:Web server(apache, nginx) 接受到一个php请求后要解析php文件, 怎么解析呢, web server是C语言写的, 所以需要一个协议, 一个php解释器, 也就是CGI.FastCGI是用来提高CGI性能的, 可以说是CGI的升级版. CGI每当一个请求过来都要开启一个进...
阅读全文
摘要:前两章是php历史和概论,略过。第三章 对象基础3.1 类和对象类,是用于生成对象的代码模版。public 公有的,都可调用。protected 保护的, 只有本类和子类可以调用。private 私有的, 只有本类可以调用,子类也不能。使用->来调用类的属性和方法: $product->title ...
阅读全文
摘要:正则表达式学习入门 \b 表示单词的界限,比如 \bweb\b 表示匹配web这个独立的单词。 . 表示匹配一个任意字符(除了换行符) * 表示数量, 意思是 *前面的内容可以重复使用无数次 比如 .* 放在一起的意思就是 任意数量的不包含换行符的字符 + 和*类似, 不同的是 *表示重复任意次 可能是0次 而+是匹配1次或更多次 \d 表示匹配数字 比如 0\d\d-\d\d\d\d\d\d\d\d 的意思是匹配以0开头后面是两个数字 然后再一个连字符- 然后再8个数字,这是匹配中国电话的格式 这么多的\d看起来很麻烦,也可以写成 0\d{2}-\d{8} 表示\d重复了2次和8...
阅读全文
摘要:应用执行流程:浏览器向服务器发送 Http Request | 控制器(protected/controllers) | |---> Action | 创建模型 (Model) | 检查$_POST输入 | 渲染视图 | render()第二个参数作为控制器与视图接口参数 | |----> View (protected/views) | ...
阅读全文