php怎么批量上传,PHP怎么快速学习?
说一说我个人的学习历程吧,可以当做参考。
首先,我是买了一本PHP零基础的书籍,结合着一本HTML的书籍开始学习的,按照书籍上的操作,把代码都敲了一遍,当时确实只能大概熟悉一下,其实真正了解还是需要之后的回顾才能真正掌握。
其次,就是要多问,尤其是刚开始学习的时候,好多问题一时间根本搞不懂,需要多问身边的高手,或者通过其它渠道方式多交流问题,记得解决后做好总结。
最后,就是要做到成长,扩展,要知道不能只局限于PHP,比如HTML,JS,Linux,MySQL,服务器配置等很多相关的知识要同步掌握,这样才会逐渐掌握PHP工程师日常要涉及到的工作。
服务器linux环境运行php?
以centos7为例,模式为lnmp。(使用root用户登录)
更新阿里云yum源1、进入源目录
# cd /etc/
yum.repos.d/
2、备份原repo文件
# for name in `ls`; do mv $name ${name}.bak ; done
3、下载阿里云yum源
# curl
http://mirrors.aliyun.com/repo/Centos-7.repo > Centos-7.repo
4、清理并生成缓存并安装epel
nginx安装1、安装pcre,可以支持rewrite功能。
# yum install pcre*
2、安装openssl,可以支持ssl功能
# yum install openssl*
3、从官网下载稳定版,此时是1.16.1,然后解压(如果没有wget ,请执行yum install wget)
# cd /usr/local/src
# wget http://nginx.org/download/nginx-1.16.1.tar.gz
# tar -zxvf nginx-
1.16.1.tar.gz
# cd nginx-1.16.1
4、安装软件三板斧(./configure , make , make install)。
# ./configure --prefix=/usr/local/nginx-1.16.1 --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-pcre
# make
# make install
5、centos7防火墙打开http, https
# firewall-cmd --zone=public --add-service=http --permanent
# firewall-cmd --zone=public --add-service=https --permanent
# firewall-cmd --reload
6、启动nginx
# /usr/local/nginx-1.16.1/sbin/nginx
当通过你系统的IP地址访问出现如下画面,则安装成功
关闭nginx:
# /usr/local/nginx-1.16.1/sbin/nginx -s stop
当改变了nginx.conf后,要重置:
# /usr/local/nginx-1.16.1/sbin/nginx -s reload
安装php和php-fpm1、安装php7,这里选择php70w,需更新webtatic源
# rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
# yum install php70w
2、安装php扩展,这里以xml扩展示例,你也可以使用yum list php70w*查看所有扩展。
#yum install php70w-xml
3、查看安装结果
#php -v (查看版本)
#php -m (查看扩展)
4、安装php-fpm,(这个与nginx一起使用来解析PHP脚本的)
#yum install php70w-fpm
5、启动php-fpm,并加入开机启动
# systemctl start php-fpm
# systemctl enable php-fpm
6、新建www用户
# useradd www -s /sbin/nologin
7、修改nginx.conf,加入php解析
第2行
第45行
第65-71行改成如下图所示:
8、将html目录所有者改为www,并将权限改为755
# chown -Rf www:www /usr/local/nginx-1.16.1/html
# chmod -Rf 755 /usr/local/nginx-1.16.1/html
9、重启nginx看到如下结果,即配置成功
# /usr/local/nginx-1.16.1/sbin/nginx -s reload
如何快速上手Spring?
概述
与一些动态语言(如Ruby、Groovy、Node.js)相比,Java开发显得异常笨重。接触过外包项目的朋友也有所了解,如果要开发一个小型项目,首选的编程语言并不是Java,而是PHP。为什么呢?因为开发起来快!目前很多大型互联网公司的早起编程语言都是类似PHP这种能够快速开发的语言。
既然问题出现了,那必然有解决问题的方案,SpringBoot做到了。
SpringBoot让我们可以在几分钟内就搭建出一套项目的基础架构,同时为我们提供了大量集成方案——starters。基于“约定优于配置”的理念,减少大量的配置文件,让项目快速、简单的运行起来。内置web容器(如tomcat、Netty等),通过jar -jar命令即可启动一个项目。
项目创建环境要求
采用SpringBoot最新版本2.1.3来讲解。我们使用Maven项目管理工具来管理项目,电脑上要预先安装好Maven3.3+(SpringBoot要求)版本。JDK当然也少不了,但需要JDK8及以上版本。
创建项目方式一
通过官网提供的Spring Initializr来创建项目。访问官方网址:https://start.spring.io/ 。显示内容如下
简单了解一下相应的参数选择:
Project:选择项目构建的工具,采用默认的Maven;
Language:选择构建项目的语言,采用默认的Java;Spring Boot:选择使用的SpringBoot的版本信息,采用最新版本2.1.3;Project Metadata:设置项目的元数据,主要就是设置Maven相关的配置;Group,对应Maven中的GroupId,Artifact对应Maven中的ArtifactId。打开More options会看到另外一些默认的配置:
Packaging:指定打包的模式,默认采用Jar包模式,即使用java -jar启动即可,如果需要部署到单独的tomcat或其他web容器,则可选择war包。Java Version:SpringBoot2.13默认支持最低JDK为8。我们前面提到的starters的选择就是在Dependencies中设置,在没有输入任何内容的时候,能够看到该输入栏目有对应的提示信息。当输入web时,会动态匹配与web相关的依赖,点击“➕”添加即可。这里选择web的最小化配置。
当完成选择,点击“Generate Project”即可自动下载创建好的项目代码。解压之后,会看到是一个标准的Maven项目,使用idea等IDE引入Maven项目,自动加载依赖即可
创建项目方式二
第二种创建方式就是直接使用IDEA进行创建,当然前提是IDEA中已经安装了Spring Boot相关的插件——Spring Boot,如下图所示。
像创建其他项目一样,File,New,Project…,即可进入创建项目页面,如下图:
选择Spring Initializr,展示右边基础配置项。我们会发现,其实此插件进行创建时默认也是调用官方提供的网址进行创建。选择JDK8,点击下一步。
像第一种方式一样,填写相关参数信息,这里就不再重复描述。点击“Next”,进入选择依赖界面。点击“Web”,同时勾选中间部分出现的“Web”。能够看到下面出现了“Servlet web application with Spring MVC and Tomcat”,因此,项目已经具有了SpringMVC框架和Tomcat内置web容器了。
当然,如果项目需要,也可以选择添加更多相关依赖。完成依赖选择之后,点击“Next”,指定项目的名称和位置,点击“Finish”,等待项目构建完成即可。根据网络速度,等待时间有所不同,当添加依赖jar包一直卡着不动时,可考虑关闭项目重新打开,手动“Reimport”一下Maven依赖。
项目目录结构项目完成创建之后,来看一下目录结构:
项目目录结构简单明了,就是一个普通的Maven项目。src/main/java目录下为项目的启动程序和后续需要编写的业务代码。resources目录存放配置文件和资源文件,如web项目的js、css、image、jsp等。test目录存放单元测试类。
配置文件
在常规spring构建的web项目中的配置文件,比如spring-content.xml、web.xml等配置文件都不见了。能够看到的只有application.properties,它默认内置了一些配置,可以通过IDEA的提示功能,快速配置相应的参数,比如在文件内入手server,则会给出如下提示:
通过提示可以看出,内嵌tomcat默认的端口为8080。可以通过server.port=xx,重新指定端口号。
项目依赖
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.1.3.RELEASE</version>
<relativePath/> <!-lookup parent from repository -->
</parent>
<groupId>com.example</groupId>
<artifactId>demo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<name>demo</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>
看到pom里面的内容是不是感觉清爽到极致了。是的,忽略掉Maven的元数据配置,其实我们仅仅引入了三部分的内容:
parent元素,引入了spring-boot-starter-parent的依赖管理,主要提供了整体版本控制和打包等内容;
dependencies元素中,引入了spring-boot-starter-web这个starter和单元测试的starter。
build元素中,引入了一个构建项目的maven插件。
而此刻,如果打开项目的jar包依赖,会看到已经引入了几十个功能相关的jar包了。
HelloWorld编写一个可通过浏览器访问的hello web程序。在com.example.demo包下创建一个controller的包,并创建HelloWorldController类。
package com.example.demo.controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class HelloWorldController {
@RequestMapping
public String hello() {
return "hello world!";
}
}
像我们使用spring mvc一样,在controller中实现上面的代码。运行DemoApplication中的main方法启动项目,在浏览器输入:http://localhost:8080/hello,页面显示出”hello world!”,一个简单的rest接口请求便完成了。
是不是非常的便捷呀.......
怎么用企业内网搭设网盘服务器?
OnceOA是一个可以快速本地化部署的企业知识管理套件,支持多种格式文档直接在线编辑。Windows下解压即用。里面包含企业网盘,门户博客系统,知识管理,文档同步,同时还包含考勤,流程管理,组织架构管理,权限控制,等一些企业功能,还可从应用中心下载更多模块使用,个人用户免费。
一键安装OnceOA因为采用我们自己开发的内存数据库,在Windows下纯绿色安装,无需任何配置。在官网上下载Windows下的软件包后,直接解压,然后运行 onceai/windows 目录下的
onceai.exe
即可。此时右下角会出现一个托盘图标,点击鼠标右键,弹出右键菜单。点击“打开 OnceOA" 即可通过浏览器访问OnceOA网页服务。推荐使用 Chrome 浏览器。
浏览器打开后,需要创建管理员帐号,如下图。您可将访问地址分发给局域网内的其它电脑,进行协同办公,这样局域网内的服务器就搭建完成了。
OnceOA在Linux系统下安装,可解锁svn/git/smb等网盘功能。建议将OnceOA的网盘功能分配到一台独立的服务器,因为网盘服务会用到第三方模块并开放多个文件服务端口,分开部署,可提高安全性,OnceOA企业管理软件服务器要想和网盘服务器使用统一帐号登录的话,多个服务连接到同一台服务器上的OnceDB即可。
OnceDoc知识管理注册后即会进入到网盘的管理界面,桌面上放置的是各个功能模块,可在应用管理中禁用或安装新模块。OnceOA应用自主研发的Web应用框和数据库,模块中包含完整的前整、后端和数据库定义,模块不启用,就不会增加系统复杂性。
OnceOA的企业网盘功能有很多,比如创建svn/git文件版本控制服务,SMB文件共享服务等。这里主要介绍一下OnceDoc知识管理。
OnceDoc知识管理点击桌面上的 OnceDoc文档,即可进入OnceDoc知识管理界面。
OnceDoc 会给新用户分配一个默认的团队目录,默认只有您可以访问,你可以创建新的团队目录,专门用来存放公共文档,博客图片等。若希望所有人可见,还需要在团队设置中开放目录的读取权限。
创建MarkdownOnceDoc支持多种文档格式的直接在线编辑。这里重点介绍一下Markdown,
Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。
支持项目流程图等图表的创建,在空白处点击鼠标右键,即可选择创建Markdown。
流程图Markdown可使用标记语言创建流程图,代码如下:
```flowgraph LR
A((圆形开始)) -连线文字 --> B(圆角方框)
B --> C{是否}
C ==>|粗线是|D[方形结果1]
C -.->|虚线否|E[方形结果2]
```显示效果:
效果如下:
Gantt项目进度图甘特图目前主要用于说明项目进度表。 描述各个子任务的间进度,比较适合用作项目管理。
```flowgantt
title 项目进度时间规划图
dateFormat YYYY-MM-DD
section 开发
需求分析 : a1, 2014-01-01, 30d
原型开发 : after a1, 20d
section 测试
测试计划 : 2014-01-12, 12d
测试用例 : 24d
```
效果
时序图序列图是对对象之间传送消息的时间顺序的可视化表示。序列图的主要用途是把用例表达的需求,转化为进一步、更加正式层次的精细表达。
```flowsequenceDiagram
Alice->>John: Hello John, how are you?
John-->>Alice: Great!
```
效果如下:
图表支持Markdown编辑器支持图表,图表数据可以直接从Excel粘贴过来。
```chartBudget,Income,Expenses,Debt
June,5000,8000,4000,6000
July,3000,1000,4000,3000
Aug,5000,7000,6000,3000
Sep,7000,2000,3000,1000
Oct,6000,5000,4000,2000
Nov,4000,3000,5000,4000
```
效果如下:
可通过 type 指定为折线图
OnceOA Markdown编辑器还支持数学公式,UML类图关系图等。
详细的介绍可通过 OnceOA 官网查看:
http://onceoa.com/wiki/view/markdown
ARM服务器OnceOA的数据库,应用框架均自主研发,天生支持树莓派等ARM开发板。目前有很多国产的 ARM 开发板,性价比非常高。如 Orange Pi、Nano Pi、Banana Pi 等。您只需花很少的钱就可以搭建一个 Markdown、svn/git 私有云企业网盘。
ARM平台上的安装与Linux一样,只需要解压,初始化2步即可。具体过程可参考:
在Arm开发板上安装:
http://onceoa.com/wiki/view/onceoa_download/arm-install
文档同步OnceOA自主研发了文档同步服务,就可实现多台电脑的本地文件与网盘中的OnceDoc自动保持同步。文档同步客户端可在
http://onceai.com
下载。手机同步通过众多支持SMB协议的APP,可实现手机访问网盘上的共享目录,或自动同步备份手机中的照片视频。
网站后台上传和修改信息?
可以啊,这个批量上传和修改的,推荐你去用专门的脚本工具“无敌点击狗”软件来实现,不需要你做复杂的设置,只需一次设置就能全自动批量操作,简单方便又好用! 在无敌点击狗里依次添加鼠标自动点击,键盘按键模拟,数据选中和文件打开几个任务就行,能做到这些批量上传发布的功能,不需你每次手工来回那么累的。