php多线程抓取网页(如何搭建PHP开发环境搭建只有两步:第一目标系统获取)

优采云 发布时间: 2022-01-25 03:05

  php多线程抓取网页(如何搭建PHP开发环境搭建只有两步:第一目标系统获取)

  可以看出,很多PHP新手常年在各个技术群里问关于PHP的问题,很多时候都会被别人说:何不去搜索引擎寻找更远的地方?

  我也觉得新人在学习的时候不能只问问题,容易产生惰性。但是,国内相对不乐观的情况,让很多新手在没有良好基础的情况下选择上手PHP。此*敏*感*词*绕 PHP 的圈子往往是浮躁的。即使他们选择了搜索引擎,如果没有良好的基础,也很难选择哪种教程可靠。作为PHP入门必备的PHP开发环境的建立,这个问题就更加明显了。

  无数的文章把本来很简单的PHP开发环境弄的极其复杂,而文章过分强调PHP语言的Web特性,强行绑架了PHP和Apache、Nginx、IIS不是的第三方应用部分PHP入门开发环节会导致很多PHPer新手误入歧途,忽略了PHP作为脚本语言的本质,从而忽略了学习更多基础知识的重要性,导致很多PHPer倾向于认为自己可以搭建一个网站只知道PHP的心态。

  以上是吐槽。

  如何搭建PHP开发环境

  搭建PHP开发环境只需两步:

  下载PHP二进制包(或源码包),解压到指定目录(源码包编译安装到指定目录);将解压缩(或安装)目录添加到环境变量中。

  这篇文章就结束了。

  只是在开玩笑。我的 文章 风格不仅仅是关于步骤,什么都没有。

  估计很多看过很多环境搭建文章的PHPer都会说,怎么会有这样的事情发生呢?这也令人不解,一个开发环境怎么会对其他人如此复杂?到底是一个PHP开发环境,还是一整套HTTP服务?

  不知道什么是 HTTP 服务?那么你需要 Apache、Nginx 和 IIS 来做什么?当然,目标不是学PHP,而是想用PHP快速创建一个网站,所以没说。另外,从 PHP 5.4 开始,PHP 自带了一个简单的 HTTP 服务器,对于常规开发来说基本足够了。

  以下是正文:

  第一个目标:根据目标系统获取PHP本身在Linux系统下通过包管理器获取PHP

  常见的 Linux 发行版都自带包管理器,这些工具可以方便的获取打包好的 PHP 及其依赖的组件。由于发行版数量众多,这里仅以Ubuntu和CentOS为例,其他发行版操作类似。

  Ubuntu:

  sudo apt-get -y 安装 php

  中央操作系统:

  须藤百胜安装 -y php

  需要注意的是,在不同的系统下,其包管理器自动安装的PHP版本可能不同,甚至有些系统的包管理器能提供的PHP版本更低。但是,大多数包管理器可以为已发布的软件指定存储库(源),并且一些组织提供收录更新版本的包管理器的存储库(源)。您还可以选择通过从源代码编译和安装来获取最新的 PHP。

  OSX/macOS系统下通过包管理器(Homebrew)获取PHP

  OSX/macOS下默认没有包管理器(有些Linux/Unix系统也没有包管理器),但是这个系统下有一个非常有名的包管理器Homebrew(),它的官网提供了一个方法安装自制软件。本文不再重复该过程。

  安装 Homebrew 后,您可以使用以下命令安装 PHP:

  冲泡安装php

  如果要安装 PHP 7.0 的版本,可以使用以下命令安装:

  冲泡安装php70

  Linux/Unix系统下获取源码安装PHP

  通过获取源代码,然后编译安装,可以轻松获取最新版本的 PHP 及其扩展,生成的 PHP 环境也是高度可定制的。

  编译安装还是很简单的,但是相比于分发包的方式,编译安装最大的麻烦就是它的依赖组件包。根据你的配置项,在整个编译过程中会需要很多依赖。

  处理依赖问题超出了本文的范围。依赖包也可以通过包管理器安装,也可以通过编译安装每个依赖包。显然,后者的(重复)工作量会非常大,所以大部分选择编译安装 PHP 及其依赖往往是通过脚本的方式完成的。

  获取PHP源代码主要有两种方式:

  下载并获取源代码的压缩文件,解压后解压源代码,在源代码目录执行如下命令编译安装:

  $ ./configure

$ make

$ sudo make install

  ./configure是一个用来生成Makefile的脚本,里面收录了很多编译选项,比如设置最终编译的程序安装目录(即PHP安装目录),设置编译到核心的扩展,设置配置文件目录等。使用:./configure --help 以获得更多编译选项。

  许多人害怕编译和安装。事实上,在当前环境下编译和安装都非常简单。所有的编译配置都很容易以统一的形式设置(即通过configure),设置完成后直接编译即可。很多人害怕的原因是配置选项太多,但这些也是套路。如果你的英文稍微好一点,通过查看各个编译选项的介绍,就可以一目了然地了解是否应该添加它们。此外,它确实不起作用,您可以使用其他常用的编译选项。

  Windows下获取PHP

  在 Windows 上安装 PHP 最简单的方法是先访问它,选择你需要的 PHP 版本,下载它,然后解压到你要安装的目录。

  除了下载页面上的PHP版本,除了系统位选项,每个版本下还有两个选项:线程安全(Thread Safe)和非线程安全(Non Thread Safe),一般我们会选择非线程安全的threading Safe,这是因为 IIS 的 FastCGI 用于 Windows 上的主流情况,它使用多进程模型而不是早期的 ISAPI 多线程模型。在多进程模型下,线程安全非常鸡肋,性能很差。非线程安全可以换取更高的性能。

  第二个目标:环境变量

  什么是环境变量?简单来说,当你在控制台下执行 php 时,Windows 系统会在设置的名为 PATH 的环境变量中提供的(很多)路径中寻找 php.exe、php.bat 等的存在。 system 执行文件,Linux/Unix 系统也在名为PATH 的环境变量下设置的路径中搜索可执行目标文件。

  如果你在Windows系统上,如果你的PHP安装在D:\Environment\php70,如果你当前的工作目录在D:\Development\Project,你需要在这个目录下运行一个PHP脚本(名为foo.php ),如果环境变量中没有添加 D:\Environment\php70,那么你必须输入命令来运行这个脚本:

  D:\环境\php70\php.exe foo.php

  如果将 PHP 安装目录添加到环境变量中,可以这样做:

  php foo.php

  在 Linux/Unix 下也是如此。比如你在/usr/local/php/70下编译安装PHP,工作目录是/home/developer/project,下面有一个文件foo.php。要执行 PHP,必须输入 PHP /usr/local/php/70/bin/php 的完整路径。

  所以这里环境变量的作用就是提供一个全局路径,不管你的工作目录在哪里,都可以访问环境变量定义的目录下的可执行文件,比如PHP解释器在目录下环境变量,你可以随时随地调用PHP解释器来执行你的PHP脚本文件。既然可以随时随地执行PHP脚本,那不是说PHP开发环境没有问题吗?

  这时候有人会疑惑,PHP不就是网站吗?可以看到这里,相信一般不会问这个问题吧?如果你真的有这个问题,那么我建议你老老实实从 PHP 官方文档开始阅读。

  【结尾】

  本作品采用《CC协议》,转载须注明作者及本文链接

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线