首页 开发编程 正文

怎么加载php.ini

配置php.ini有两种方法在Windows下安装PHP:自动安装的安装程序php-5.2.0-win32-installer.msi不包含任何外部的PHP扩展(PHP_*.dll)。...

怎么加载php.ini,iis安装php56以上?

虽说当下互联网架构中,使用Windows服务器的企业很少,但依旧有一些小众公司出于成本和门槛考虑会优先选择Windows服务器。同样作为主流的Web开发语言,PHP有着跨平台易入门的优点,使得不少开发者也有在Windows服务器上部署PHP环境的需求。

Windows Server上安装MySQL

MySQL在Windows Server服务器上安装是相当简单的,因为不需要进行额外的配置,直接像安装一般的应用软件一样安装即可。

1、去MySQL官网下载MySQL

按向导下载MSI包后,运行安装即可。

Windows Server 安装并配置PHP

相对于MySQL的安装,PHP的安装就较为麻烦了。主要安装步聚如下:

1、从PHP官网下载PHP源码包,我们选择ZIP格式,下载好后进行解压

2、打开IIS,添加处理程序映射

点击左侧的IIS服务器节点,在右侧找到“处理程序映射”并双击。

我们添加一个模块映射,将所有的php脚本指向php-

cgi.exe

程序处理。

3、FastCGI设置

在IIS管理面板中,点击左侧服务器节点,双击右侧的“FastCGI”

将“监视对文件所做的更改”指向

php.ini

文件;

再添加环境变量名为 PHP_FCGI_MAX_REQUESTS ,值为10000 ;

如下图示:

PHP的运行环境难配置吗?

PHP的运行环境不难配置!下面是个案例:

PHP开发环境配置(Windows版)

Apache+MySQL+PHP+phpMyAdmin

系统:Windows XP

Step1:下载以下文件

(1)php-5.2.0-Win32.zip

pecl-5.2.0-Win32.zip

(2)apache_2.2.3-win32-x86-no_ssl.msi

(3)mysql-5.1.12-beta-win32.zip

(4)phpMyAdmin-2.9.1.1-all-languages.zip

Step2:安装PHP, 配置php.ini

有两种方法在 Windows下安装PHP:手工安装或者使用安装程序安装。自动安装的安装程序php-5.2.0-win32-installer.msi不包含任何外部的PHP扩展(PHP_*.dll)。如果需要,可以在 Windows ZIP 包和 PECL 中找到。据PHP官方手册上称安装 PHP 最好的选择是手工安装。在手工安装中安装 PHP 最好的方式便是将所有 PHP 有关的文件都放入同一目录,并在系统的 PATH 环境变量中设置此目录。本例为手工安装.

1. 将下载的php-5.2.0-Win32.zip解压到C:\PHP\ 这个目录.

2. 再将C:\PHP\ 目录下的*.dll和 C:\PHP\ext目录下的所有文件文件复制粘贴到C:\windows\system32\下.

如果需要更多扩展,就将pecl-5.2.0-Win32.zip中的文件也放到C:\windows\system32\下.

3. 配置php.ini。

在ZIP 包中有两个ini文件,php.ini-dist和php.ini-recommended。建议使用 php.ini-recommended,因为在该文件中优化了性能和安全。复制所选择的 ini 文件到 PHP 能找到的目录中,并将其重命名为 php.ini 。

再用记事本打开 php.ini ,查找register_globals = Off,把off改成On.

再查找short_open_tag = Off,把off改成On有一处.

再查找extension_dir = "./" 改为 extension_dir = "C:\PHP\ext"

然后再查找;extension=php_mbstring.dll,把前面的分号去掉.

extension=php_mbstring.dll(不选这个phpMyAdmin会错)

以下几个dll作相同更改.

extension=php_dba.dll

extension=php_dbase.dll

extension=php_filepro.dll 可选

extension=php_gd2.dll 支持GD库的,一般要选

extension=php_imap.dll 可选

extension=php_ldap.dll

extension=php_mysql.dll 支持MySQL的

接下来修改了一些文件上传以及内存使用最大限制:

memory_limit = 20M ;内存容量

post_max_size = 20M ;闪存容量

upload_max_filesize = 20M ; 附件容量

asp_tags = On ;可选,On允许ASP风格的标记,Off禁止

4. 将 PHP 目录添加到 PATH 环境变量中

系统环境变量path=C:\php

5. 使 php.ini 文件在 Windows下被 PHP 所用

系统环境变量PHPRC=C:\php

Step3: 安装Apache,配置 httpd.conf 使之支持PHP

1.安装apache_2.2.3-win32-x86-no_ssl.msi,一路按Next即可.

安装完成后输入[url]http://localhost[/url] 查看Apache是否安装成功.

(如果安装了IIS请关闭,或者请改变安装端口,不然无法启动Apache服务)

2. 打开文件C:\Apache2\conf\httpd.conf,查找以下设置项.

即注册文件后缀.

<Directory />

Options FollowSymLinks

AllowOverride None

Order deny,allow

Deny from all

Satisfy all

AddType application/x-httpd-php .php .phtml .php3 .php4

AddType application/x-httpd-php-source .phps

</Directory>

绿色为我们新增的设置.

3.查找LoadModule模块

LoadModule php5_module "C:/ php/php5apache2_2.dll"

注意斜杠方向与Windows中路径”\”相反.

4.查找以下,并增加index.php

根据需要还可以增加其它自定义首页如index.htm

<IfModule dir_module>

DirectoryIndex index.html index.html.var index.php

</IfModule>

5. 查找 Documentroot "C:/Apache2/htdocs" 将其改为你的WEB路径; (这里是WEB主目录,可以不修改)

6.重启apache.

7. 在web根目录 C:\Apache2\htdocs\ 下新建index.php,内容如下:

<?php

phpinfo();

?>

在浏览器中输入URL: [url]http://localhost/index.php[/url] 测试结果.

如果不能正常运行,请检查配置.

Step4: 安装MySQL

MySQL安装过程

注意:安装中,一定要正确配置MySQL Server

安装完成后,新建conn.php

<?php

$link=mysql_connect('localhost','root','root');

if(!$link) echo "MySQL 数据库连接失败";

else echo "MySQL 数据库连接成功!";

mysql_close();

?>

运行该文件,测试数据库连接.

Step5:安装phpMyAdmin配置config.inc.php

phpMyAdmin并不是必需的,只是为了方便管理MySQL数据库,本身是用PHP编写而成.但是有了它,会大方便MySQL数据库管理.

1. 解压phpMyAdmin-2.9.1.1-all-languages.zip到C:\phpMyAdmin

2. 将C:\phpMyAdmin\config.sample.inc.php重命名为config.inc.php

3. 对照原文件进行如下更改,绿色为新增的.

$cfg['blowfish_secret'] = 'root';

$cfg['Servers'][$i]['controluser'] = 'root';

$cfg['Servers'][$i]['controlpass'] = 'root';

4. 将C:\phpMyAdmin\下所有文件和目录复制到

C:\Apache\htdocs\phpMyAdmin,

在浏览器中输入[url]http://localhost/phpMyAdmin/index.php[/url]进行测试

sqllexpress?

没有用过 phpstudy,看了一下应该是一套 php 的环境,那这就简单了。

先装一个 sqlserver,然后去 php.ini 里面把扩展启用了重启就好了。不知道这个环境有没有默认的 sqlserver 扩展,要是没有的话去下一个扔扩展目录下面。

sqlserver 的端口密码啥的,自己起 sqlserver 里面改一下。连 sqlserver 的时候传进去就好了。

php环境如何重新再安装?

命令行 php -m 看加载的模块, php --ini 看配置文件的哪个, php -i|grep extension_dir 看扩展目录, 然后把没有加载的扩展在php.ini里加进去.

实时生成并下载大数据量的EXCEL文件?

对于任何一个网站肯定是少不了下载功能,常见的下载功能有图片、视频、Excel表格,如果文件比较小的话,那么不会遇到任何的问题,但是当文件信息而超过了PHP的最大内存,那么在这个时候它就会有的内存溢出的问题。

那么它们是因为什么而发生的?对于这个过程的原理才是我们应该真正要去弄明白的事情

下载大数据量的EXCEL文件为何要报错?

PHP在下载大Excel表格的时候,那么首先它是需要去把MySQL的数据从硬盘上面读取到内存,但读取它是一次性载入到我们的内存,如果说它一次性载入的数据量远远大于最大内存,然后再来执行浏览器的业务下载。那么这个时候它就会发生我们这个内存溢出。

就比如:说我们现在有100M的数据量,但是我们PHP内存最大只有64M,那么这个它肯定是装不了的,我们可以把那个内存比喻为一个水杯,这个水杯的容量比喻为内存,现在杯子最大容量为64L。你要存放100L。肯定放不下

大事化小,小事化了。拆分成段

从上面可以看到文件下载,它是分为两步,首先是载入内存然后执行浏览器的输出下载,那么既然大型文件一次性载入不了,那可以采用 “大事化小,小事化了”思路,我们可以实现边写边下载,也就是分批次的读取与写入。

因为用户的话,只要最终拿到这个文件就可以,对于浏览器的下载原理不需要关心。只需要给到文件下载提示给用户即可,然后后端在实时的分批次的写入到要下载的文件当中。

实现思路步骤:

1、一设置浏览器下载Excel需要的Header

2、打开 php://output 流,并设置写入文件句柄。

注:(php://output,是一个可写的输出流,允许程序像操作文件一样将输出写入到输出流中,PHP会把输出流中的内容发送给web服务器并返回给发起请求的浏览器)

3、获取数据库所有数据量,并设置每次查询的条数,通过这两个值计算分批查询的次数

4、基于分批查询的次数循环查询数据库,然后写入到文件中,同时清除本次操作变量内存,刷新缓冲到浏览器,让浏览器的文件始终实时保持到最新的大小

注:刷新用ob_flush、flush()PHP的I/O流

在这里我们用到了PHP的一个IO的输入输出,也就是我们常用的

php://input php://output。

php://input

php://input可以读取原始的POST数据。相较于$HTTP_RAW_POST_DATA而言,它给内存带来的压力较小,并且不需要特殊的php.ini设置。php://input不能用于enctype=multipart/form-data”.

注:HTTP_RAW_POST_DATA 在PHP7已经被废弃,它不是$_POST额

php://output

php://output 是一个只写的数据流, 允许你以 print 和 echo 一样的方式 写入到输出缓冲区。

综上:实现思维与原理很重要如有感悟,欢迎关注额。(* ̄︶ ̄)

本文转载自互联网,如有侵权,联系删除