php框架

php开发工程师都需要掌握什么技能呢?

允我心安 提交于 2019-11-29 19:08:46
PHP原生标准库精通,三种大型框架中熟练掌握一门的开发(Symfony2、Yii、ZF2),小型框架中(Codeigniter 等)通读其一源码。 MySQL语句精通,实践构造 1000 万级的数据库的查询处理和优化,熟悉一门非关系数据库(MongoDB 等) (推荐学习: PHP视频教程 ) 熟悉相关开源方案的使用 Nginx、Memcache、Cherokee、CAS 等 前端方面,CSS、Javascript、jQuery、Bootstrap,能学多少学多少。 了解一些诸如CDN、集群 等实际生产环境中的技术原理和其他团队的实践 完全模仿开发知名CMS系统其一:Joomla、Drupal、Wordpress、PHPCMS 有一台自己线上的 VPS 或物理服务器,CentOS、Debian、FreeBSD 系统熟练使用其一,能准确分析系统性能瓶颈 阅读 Web 安全相关书籍和文献,能够对 Web 站点进行实际的攻守并了解各类常见安全问题的原理和解决方法 Shell 或编译语言能够熟练使用其一:Python、NodeJS、Ruby、GO、C 学习一些时间管理和项目管理理念,主要是多阅读一些书。 设计模式、算法导论、代码大全这些经典都要通读 来源: https://www.cnblogs.com/cyk2/p/11527587.html

学编程的起点——高级语言大锅烩

旧街凉风 提交于 2019-11-29 18:23:58
学编程的起点——高级语言大锅烩 前言: 学知识前总想说点鸡汤,想喝的朋友就看看,不想喝的就直接看干货吧,就当鸡汤是给我自己喝的。 前段时间在网上看了一句话感觉挺触动我的,我做个分享: 如果你觉得你的祖国不好,你就去建设它; 如果你觉得政府不好,你就去考公务员去做官; 如果你觉得人民没素质,就从你开始做一个高素质的公民; 如果你觉得同胞愚昧无知,就从你开始学习并改变身边的人, 她(他,它)有缺点,我们一起修正,而不是一昧的谩骂,抱怨,逃离。 横眉冷对千夫指,俯首甘为孺子牛。 “你所站立的地方,正是你的中国; 你怎么样,中国便怎么样; 你是什么,中国便是什么; 你若光明,中国便不黑暗”, 愿中国青年都摆脱冷气,只是向上走,不必听自暴自弃者流的话。 能做事的做事,能发声的发声。 有一分热,发一分光,就像萤火一般, 也可以在黑暗里发一点光,不必等候炬火。 此后如竟没有炬火,我们便是唯一的光。 虽然抄了一遍,依然振奋不已, 我虽是小小大学生,小小程序员,可我愿意传递充满正能量的光,从我做起! 高级语言大锅烩 话接上文,上文《 走进编程的殿堂 》 中,我用自导自演的大白话讲了编程语言的演化过程,我想看完上篇,大家对编程语言有了一定的认识,那接下来,我来详细介绍一下有哪些高级语言以及他们的适用环境。 2019年9月编程语言排行榜TOP20: 2019年9月编程语言排行榜top10的柱状图

redis+mysql缓存

雨燕双飞 提交于 2019-11-29 10:58:22
redis+mysql缓存 缓存逻辑:client -> nginx -> php-fpm -> redis -> mysql 一.原理 1.为什么要作缓存 当网站的处理和访问量非常大的时候,我们的数据库的压力就变大了,数据库的连接池,数据库同时处理数据的能力就会受到很大的挑战,一旦数据库承受了其最大承受能力,网站的数据处理效率就会大打折扣。此时就要使用高并发处理、负载均衡和分布式数据库,而这些技术既花费人力,又花费资金。 2.redis缓存原理 Redis其实就是说把表中经常访问的记录放在了Redis中,然后用户查询时先去查询Redis再去查询MySQL,确实实现了读写分离,也就是Redis只做读操作。由于缓存在内存中,所以查询会很快。 如何确定在redis查询还是Mysql查询: 对于一个sql语句格式的数据请求,首先计算该语句的MD5并据此得到结果集标识符,然后利用该标识符在Redis中查找该结果集。注意,结果集中的每一行都有一个相应的键,这些键都存储在一个Redis集合结构中。如果Redis中不存在这样一个集合,说明要找的结果集不在Redis中,所以需要执行相应的sql语句,在Mysql中查询到相应的结果集,然后按照上面所说的办法把结果集中的每一行以字符串或哈希的形式存入Redis。 3.memcached和redis做缓存的区别 1.性能上: 性能上都很出色,具体到细节

利用 Composer 完善自己的 PHP 框架(一)——视图装载

别来无恙 提交于 2019-11-29 10:04:51
利用 Composer 完善自己的 PHP 框架(一)——视图装载 本教程示例代码见 https://github.com/johnlui/My-First-Framework-based-on-Composer 回顾 经过了上一个 系列教程 《利用 Composer 一步一步构建自己的 PHP 框架》 ,我们组建了一个具有 路由 、 MVC 架构 和 ORM 功能的基础框架 MFFC 。接下来我们继续完善这个项目。 我们先从目前用着 最不爽 的地方——视图装载下手。我们将封装一个视图装载类,让它来帮我们装载视图,并把变量传递进视图。这个类将只暴露出来几个简单的接口,让我们在控制器里面用的爽,让我们一边写代码一边笑。真的笑,笑出声。:-D 正文 构思 视图装载类要做的工作其实很简单: 1. 根据视图名称找到视图文件,支持文件夹 2. 更加方便,更加优雅地把变量的值传递进视图 本文中我们将不会不引入模板引擎,只做装载文件和传递变量的功能。 基础准备 我们要引入视图装载器,这就正式打开了组件化的大门,所以我们需要做一些准备工作。 启动流程组件化 将 public/index.php 里面的代码分离一部分到启动器(bootstrap),新建 MFFC/bootstrap.php 文件: <?php use Illuminate\Database\Capsule\Manager as

推荐一个 Laravel admin 后台管理插件

回眸只為那壹抹淺笑 提交于 2019-11-29 06:34:15
如何优雅的写代码,我想是每位程序员的心声。自从15年初第一次接触 Laravel 4.2 开始,我就迷上使用 Laravel 框架了。我一直都想找个时间好好写写有关 Laravel 的使用文章,由浅入深的介绍 Laravel 框架。 今天通过使用 laravel-admin 插件,来简单说说怎么优雅的写 Laravel 代码。 创建 Laravel 项目 只要跟着官方文档走,创建一个 Laravel 项目还是很简单的: // 使用 Composer 下载 Laravel 安装程序 composer global require "laravel/installer" // 创建 web 项目 laravel new web 具体配置数据库等: 略 安装 Laravel 看官网: https://d.laravel-china.org/docs/5.5/installation 如何安装 Composer,可以看看我之前的文章 一步一步搭建 PHP 服务器环境 安装 laravel-admin laravel-admin 是一个可以快速帮你构建后台管理的工具,它提供的页面组件和表单元素等功能,能帮助你使用很少的代码就实现功能完善的后台管理功能。 注:当前版本(1.5)需要安装 PHP 7+和 Laravel 5.5 看看 laravel-admin 的特性: 内置用户和权限系统

从零开始编译安装LAMP(上)

天涯浪子 提交于 2019-11-29 04:33:19
一、Linux平台架构(虚拟机安装CentOS6.3)(--上) 说明:操作系统使用centos6.3,64位架构。由于生产环节安装Linux平台都是使用最小化安装,因此这次也是采用最小化安装。 1.打开虚拟机,选择创建新的虚拟机--然后选择典型(推荐)安装,点击下一步 2.选择“稍后安装操作系统” 3.点击下一步,然后选择自己需要安装的操作系统和系统版本。我安装的是64位的CentOS6.3,如下图一样选择。 4.点击下一步,之后会出现给虚拟机命名,以及选择虚拟机位置。在此处就是让他叫做CentOS6.3_64,位置按照你的需要选择。如下图: 5.配置好以后,点击“下一步”,给虚拟机分磁盘,这里我们可以随便分,即使查过物理磁盘大小也是可以的 6.点击“下一步”,然后点击完成。现在就回在虚拟机中出现刚刚创建的Centos6.3_64,但是现在仅仅只是一个框架,我们此时可以修改操作系统硬件环境配置,比如内存大小,处理器数量以及网络模式等等。 7.双击设备下面的子选项可以修改单个虚拟物理硬件的配置,这里我们主要修改一下网络适配器的模式,让他以桥接的方式存在,这样就相当于一个真实的物理主机,IP地址也是独立的,和主机是在同一个网段的。 8.点击确定以后,就可以挂在光盘镜像了。现在双击CD/DVD(IDE)选项。然后选择使用ISO镜像文件,点击浏览找到镜像位置

LINUX下NGINX+PHP+YAF环境搭建

自闭症网瘾萝莉.ら 提交于 2019-11-29 04:16:35
自己搭建了一下NGINX+PHP+YAF的生产环境,在这里记录一下,避免遗忘 yaf是一套用PHP扩展实现的PHP框架,底层用C语言实现,据yaf作者描述其效率是Zend的50-60倍,性能高而又不失开发效率。 操作系统是CentOS release 6.5 整个过程主要分为三个部分: 1.编译安装PHP 2.编译安装NGINX 3.编译安装YAF 一、编译安装PHP 1.下载PHP源码,我这里下载得版本是5.6.29(php-5.6.29.tar.gz) http://www.php.net/downloads.php 2.安装各依赖包 yum -y install gcc gcc-c++ libxml2 libxml2-devel bzip2 bzip2-devel libmcrypt libmcrypt-devel openssl openssl-devel libcurl-devel libjpeg-devel libpng-devel freetype-devel readline readline-devel libxslt-devel perl perl-devel psmisc.x86_64 recode recode-devel libtidy libtidy-devel 3.解压源码包至当前目录 tar zxvf php-5.6.29.tar.gz 4

LNMP环境搭建

泪湿孤枕 提交于 2019-11-29 04:16:14
在平时运维工作中,经常需要用到LNMP应用框架。 以下对LNMP环境部署记录下: 1)前期准备:为了安装顺利,建议先使用yum安装依赖库 [root@opd ~]#yum install -y make cmake gcc gcc-c++ autoconf automake libpng-devel libjpeg-devel zlib libxml2-devel ncurses-devel bison libtool-ltdl-devel libiconv libmcrypt mhash mcrypt libmcrypt-devel pcre-devel openssl-devel freetype-devel libcurl-devel 2)安装nginx [root@opd ~]#cd /opt/src [root@src ~]#wget http://nginx.org/download/nginx-1.8.0.tar.gz [root@src ~]#tar -zxvf nginx-1.8.0.tar.gz [root@src ~]#cd nginx-1.8.0 添加www用户,其中-M参数表示不添加用户家目录,-s参数表示指定shell类型 [root@nginx-1.8.0 ~]#useradd www -M -s /sbin/nologin [root@nginx-1

php Excel 导入功能

杀马特。学长 韩版系。学妹 提交于 2019-11-29 02:40:20
下载excel类地址 https://pan.baidu.com/s/1OfPmq4dKAaxBUSbQ3an8ZQ 密码:kmh2 本人用的thinkcmf框架 把类文件放在框架的类文件里面,下面直接上代码 注:excel一定要放在框架公共类文件里面,因为这个本人绕了好久,一直报错。所以请大家注意。 function exceladd($sheet=0){ $file = $_FILES['excel']['tmp_name']; $file = iconv("utf-8", "gb2312", $file); //转码 if(empty($file) or !file_exists($file)) { die('file not exists!'); } vendor('PHPExcel.Classes.PHPExcel');//引用类文件 $objRead = new \PHPExcel_Reader_Excel2007(); //实例化 建立reader对象 if(!$objRead->canRead($file)){ $objRead = new \PHPExcel_Reader_Excel5(); if(!$objRead->canRead($file)){ die('No Excel!'); } } $cellName = array('A', 'B', 'C',

php错误与异常处理方法

六眼飞鱼酱① 提交于 2019-11-29 02:15:13
php与其他计算机编程语言在遇到错误就抛出异常不太一样,PHP在处理对象时它也有异常机制,但是PHP会尽可能的愉快的去执行而无视发生的事情,除非遇到一个极端严重错误才会抛出异常。本文主要给大家分享PHP相关的错误异常处理机制。 错误等级 PHP 有几个错误严重性等级。三个最常见的的信息类型是错误(error)、通知(notice)和警告(warning)。它们有不同的严重性: E_ERROR 、E_NOTICE和 E_WARNING。错误是运行期间的严重问题,通常是因为代码出错而造成,必须要修正它,否则会使 PHP 停止执行。通知是建议性质的信息,是因为程序代码在执行期有可能造成问题,但程序不会停止。 警告是非致命错误,程序执行也不会因此而中止。 使用 PHP 内置的函数 error_reporting(),可以设定程序执行期间的错误等级,方法是传入预定义的错误等级常量,这意味着如果你只想看到警告和错误 - 而非通知 - 你可以这样设定: error_reporting(E_ERROR | E_WARNING); 你可以让 PHP 利用错误控制操作符 @ 来抑制特定的错误, 如@fopen()。将这个操作符放置在表达式之前,其后的任何错误都不会出现。但是我不建议这么做。 错误报告 错误日志对于发现程序中的错误是非常有帮助的,但是有些时候它也会将应用程序的结构暴露给外部