php5.5手册,php51

本文目录一览:

PHP是什么?

PHP(中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。

PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多。

PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

PHP在数据库方面的丰富支持,也是它迅速走红的原因之一,它支持下列的数据库或是数据文件:

Adabas 、D、 DBA、dBase 、dbm 、filePro 、Informix 、InterBase、mSQL 、Microsoft SQL Server、·MySQL、Solid、Sybase、 Oracle 、PostgreSQL

而在Internet上它也支持了相当多的通讯协议 (protocol),包括了与电子邮件相关的 IMAP,POP3;网管系统 SNMP;网络新闻NNTP;帐号共用 NIS;全球信息网HTTP及Apache服务器;目录协议LDAP以及其它网络的相关函数。

扩展资料:

PHP的特性包括:

1、PHP独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。

2、PHP可以比CGI或者Perl更快速的执行动态网页——动态页面方面,与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成htmL标记的CGI要高许多;PHP具有非常强大的功能,所有的CGI的功能PHP都能实现。

3、PHP支持几乎所有流行的数据库以及操作系统。

4、PHP可以用C、C++进行程序的扩展。

参考资料:

百度百科–PHP

php为什么弃用了mysql

PHP提供了三种不同的api连接到MySQL,这三种api是:mysql, mysqli以及PDO扩展。MySql函数是非常受欢迎的,但是官方团队并不鼓励再使用它们。在php手册里边,当你看到关于Mysql的函数,会发现都标有红色的标志,那意味着它们已经被弃用了。弃用ext/mysql函数不仅安全,而且使用其他数据库查询方法可以同样具有MySQL函数的所有功能。更好的方法是使用PDO代替ext/mysql函数。

以下是PHP里不应该再使用mysql函数的3大原因:

1、mysql函数已在PHP5.5中正式弃用,并将在PHP7中被删除。

2、mysql函数缺少面向对象的接口。

3、mysql函数不支持以下特性:

不支持非阻塞连续获取

不支持异步查询

不支持参数化查询

不支持存储过程

不支持多个语句

不支持在MySQL 5.1的中所有功能

不支持加密(SSL)

不支持压缩

不支持完整的字符集

如何把php5.3版本升级到php5.4或者php5.5

查看官方手册php5.3到5.4的升级注意事项,更改代码,上线测试。

php环境搭建问题!

哥,这里不给放链接的。。。。

win7 64bit

一、相关准备:

Apache软件:httpd-2.4.10-win64-VC11.zip

PHP软件:php-5.5.17-Win32-VC11-x64.zip

MySQL软件:mysql-5.6.21-winx64.zip

编译支持环境: vcredist_x64.exe(VC11)(先安装)

运行环境目录:

C:\myenv\apache (Apache)

C:\myenv\php (PHP)

C:\myenv\mysql (MySQL)

C:\myenv\sessiontmp (运行期间session存放目录,可读写)

C:\myenv\ fileuploadtmp (运行期间PHP文件上传存放目录,可读写)

二、安装Apache服务

1、解压httpd-2.4.10-win64-VC11.zip变重命名文件夹为apache,将其复制到C:\myenv\目录下。

2、编辑C:\myenv\apache\conf\httpd.conf配置文件,主要配置事项如下,红色字体代表新增:

ServerRoot “c:/myenv/apache”

Listen 80

#加载PHP模块

LoadModule php5_module C:/myenv/php/php5apache2_4.dll

PHPIniDir “C:/myenv/php” (注意留一个空格)

ServerAdmin 469085313@qq.com

ServerName 127.0.0.1:80

DocumentRoot “c:/myenv/apache/htdocs”

DirectoryIndex index.php index.html

ScriptAlias /cgi-bin/ “c:/myenv/apache/cgi-bin/”

AddType application/x-httpd-php .php

AddType application/x-httpd-php .html

AddType application/x-httpd-php .htm

3、启动Apache服务

管理员身份启动cmd.exe程序

Start apache in a DOS commdline:

httpd.exe

Install as a service:

httpd.exe -k install

Run ApacheMonitor:

Double click ApacheMonitor.exe

4、测试Apache是否正常服务:

三、安装PHP服务插件

1、解压php-5.5.17-Win32-VC11-x64.zip变重命名文件夹为php,将其复制到C:\myenv\目录下。

2、将C:\myenv\php\php.ini-development配置文件重命名为php.ini配置文件,打开php.ini文件,做如下的配置操作:

;On windows下面的;extension_dir = “ext”

修改为如下:

extension_dir = “C:/myenv/php/ext” 前面的分号;去掉。

开启相应的扩展库功能,比如php_mysql.dll等,即将

extension=php_bz2.dll

extension=php_curl.dll

extension=php_gd2.dll

extension=php_mbstring.dll

extension=php_mysql.dll

extension=php_pdo_mysql.dll

extension=php_pdo_odbc.dll

extension=php_xmlrpc.dll

这些extension前面的分号;去掉。(;代表注释掉的意思)

配置session文件在服务器上的保存目录

;session.save_path = “/tmp” 前面的分号;去掉

或修改为session.save_path = “C:/myenv/sessiontmp”(前面的分号;去掉)

配置PHP的文件上传功能

;upload_tmp_dir =

或修改为upload_tmp_dir = “C:/myenv/fileuploadtmp”(前面的分号;去掉)

配置时间区域

;date.timezone =

修改为date.timezone = Asia/Shanghai (前面的分号;去掉)

PHP5默认MySQL是关闭的,要将C:\myenv\php文件夹下的libenchant_myspell.dll和C:\myenv\php\ext文件夹里的php_mysql.dll考到C:/Windows/System32里面;

3、测试Apache+php是否安装成功:

(见本文末尾有代码)

四、安装MySQL服务

1、解压mysql-5.6.21-winx64.zip变重命名文件夹为mysql,将其复制到C:\myenv\目录下。

2、将C:\myenv\mysql\my-default.ini配置文件重命名为my.ini配置文件,打开my.ini文件,做如下的配置操作:

[client]

#设置mysql客户端默认字符集

default-character-set = utf8

[mysqld]

#设置mysql的安装目录

basedir = C:\myenv\mysql

#设置mysql数据库的数据存放目录

datadir = C:\myenv\mysql\data

#设置3306端口

port = 3306

#设置允许最大连接数

max_connections = 200

#设置服务器端字符集

character-set-server = utf8

#创建新表时将使用的默认存储引擎

default-storage-engine = INNODB

# server_id = …..

3、启动MySQL

以管理员身份运行cmd.exe,将目录切换到mysql的bin目录下,输入:Mysqld –install,如下图所示

出现安装OK后。接着输入net start mysql 启动服务

以上表示mysql服务启动成功

设置密码root用户的密码为root15w05

在cmd中输入:mysql –u root,如下图

mysqluse mysql;

mysqlupdate user set password=PASSWORD(“root15w05”) where user=’root’;

mysqlflush privileges;

mysqlquit;

root用户密码修改成功!

4、测试Apache+PHP+MySQL运行环境

http:/localhost/testdbconn.php

PHP语言是什么语言,用来做什么的?

PHP(外文名:PHP: Hypertext Preprocessor,中文名:“超文本预处理器”)是一种通用开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

PHP原始为Personal Home Page的缩写,已经正式更名为 “PHP: Hypertext Preprocessor”。注意不是“Hypertext Preprocessor”的缩写,这种将名称放到定义中的写法被称作递归缩写。PHP于1994年由Rasmus Lerdorf创建,刚刚开始是Rasmus Lerdorf为了要维护个人网页而制作的一个简单的用Perl语言编写的程序。这些工具程序用来显示 Rasmus Lerdorf 的个人履历,以及统计网页流量。后来又用C语言重新编写,包括可以访问数据库。他将这些程序和一些表单直译器整合起来,称为 PHP/FI。PHP/FI 可以和数据库连接,产生简单的动态网页程序。

在1995年以Personal Home Page Tools (PHP Tools) 开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档。并且发布了PHP1.0!在这的版本中,提供了访客留言本、访客计数器等简单的功能。以后越来越多的网站使用了PHP,并且强烈要求增加一些特性。比如循环语句和数组变量等等;在新的成员加入开发行列之后,Rasmus Lerdorf 在1995年6月8日将 PHP/FI 公开发布,希望可以透过社群来加速程序开发与寻找错误。这个发布的版本命名为 PHP 2,已经有 PHP 的一些雏型,像是类似 Perl的变量命名方式、表单处理功能、以及嵌入到 HTML 中执行的能力。程序语法上也类似 Perl,有较多的限制,不过更简单、更有弹性。PHP/FI加入了对MySQL的支持,从此建立了PHP在动态网页开发上的地位。到了1996年底,有15000个网站使用 PHP/FI。

ISAPI筛选器

在1997年,任职于 Technion IIT公司的两个以色列程序设计师:Zeev Suraski 和 Andi Gutmans,重写了 PHP 的剖析器,成为 PHP 3 的基础。而 PHP 也在这个时候改称为PHP:Hypertext Preprocessor。经过几个月测试,开发团队在1997年11月发布了 PHP/FI 2。随后就开始 PHP 3 的开放测试,最后在1998年6月正式发布 PHP 3。Zeev Suraski 和 Andi Gutmans 在 PHP 3 发布后开始改写PHP 的核心,这个在1999年发布的剖析器称为 Zend Engine,他们也在以色列的 Ramat Gan 成立了 Zend Technologies 来管理 PHP 的开发。

在2000年5月22日,以Zend Engine 1.0为基础的PHP 4正式发布,2004年7月13日则发布了PHP 5,PHP 5则使用了第二代的Zend Engine。PHP包含了许多新特色,像是强化的面向对象功能、引入PDO(PHP Data Objects,一个存取数据库的延伸函数库)、以及许多效能上的增强。PHP 4已经不会继续

PHP

更新,以鼓励用户转移到PHP 5。

2008年PHP 5成为了PHP唯一的有在开发的PHP版本。将来的PHP 5.3将会加入Late static binding和一些其他的功能强化。PHP 6 的开发也正在进行中,主要的改进有移除register_globals、magic quotes 和 Safe mode的功能。

PHP最新稳定版本:5.4.30(2013.6.26)

PHP最新发布的正式版本:5.5.14(2014.6.24)

PHP最新测试版本:5.6.0 RC2(2014.6.03)

2013年6月20日,PHP开发团队自豪地宣布推出PHP 5.5.0。此版本包含了大量的新功能和bug修复。需要开发者特别注意的一点是不再支持 Windows XP 和 2003 系统。

2014年10月16日,PHP开发团队宣布PHP 5.6.2可用。四安全相关的错误是固定在这个版本,包括修复cve-2014-3668,cve-2014-3669和cve-2014-3670。所有的PHP 5.6鼓励用户升级到这个版本

更多尽在;fr=index

PHP自定义门面以后显示错误?

如果您是PHP老手,当然知道当PHP脚本出错时发生了什么事情。此时PHP解析器将在屏幕上给出错误信息,如 Fatal error: Call to undefined function on line 19 –,因此程序在此处终止。这个信息会吓到客户,他可能立即打电话和你进行咨询。

幸运的是,这里有解决办法。PHP拥有内置工具,可以让开发人员捕捉脚本错误然后将它们转到自定义的错误处理器。此时则可以对处理器进行编程显示更多关于错误的详细信息。还可以将错误写入文件或数据库以采取补救措施。有时候还可以对处理器编写程序忽略错误消息。

本文中,我将阐述如何使用PHP的错误处理API构建用户自定义的错误处理器,并且说明如何以简单而友好的方式显示和管理脚本的错误信息。

错误类型和报告级别

我们从最基本的开始。PHP有三种最基本的错误类型,从低级到高级分别为:注意、警告和错误(或致命错误)。通常情况下,注意和警告不会终止程序;但是致命错误则是危险故障(例如,调用一个没有定义的函数或参考一个不存在的对象),将导致程序中断。这些错误有可能在启动、解析、编译或运行时发生。

关键字如E_NOTICE, E_ERROR等用于表明错误的不同类型和等级。在PHP手册上可以获得它们的详细信息列表。

脚本阶段错误显示由error_reporting()函数进行控制。这一函数针对不同的错误等级设置不同的参数。表A给出了使用此函数报告警告和致命错误的脚本程序。

表A

?php

// display warnings and errors

error_reporting(E_WARNING | E_ERROR);

// this will generate a notice, which will never be displayed

echo $undefinedVar;

// this will generate a fatal error, which will be displayed

callUndefFunc();

?

将表B中的代码与上面的进行比较发现,Listing B中隐藏错误信息甚至隐藏致命信息,使得错误信息不会被显示出来。

表B

?php

// turn off error display

// no errors will be displayed

error_reporting(0);

// this will generate a notice

echo $undefinedVar;

// this will generate a fatal error

callUndefFunc();

?

表C中的代码将所有错误信息甚至简单的注意事项都显示出来:

表C

?php

// all errors will be displayed

error_reporting(E_ALL);

// this will generate a notice

echo $undefinedVar;

// this will generate a fatal error

callUndefFunc();

?

如以上3个例子所示,error_reporting()函数在控制错误发生时,在屏幕上显示内容非常重要。这里的关键字是displayed,其表达的意思是错误不被显示而不是错误没有发生。因此,发生致命错误时(例如不正确的函数调用),程序将被终止;但是,此时没有任何消息显示给用户。

下面的例子(表 D)说明了这种情况:

表D

?php

// no errors will be displayed

error_reporting(0);

// start a task

echo “Starting task…”;

// call an undefined function

// a fatal error occurs during task processing

callMe();

// end the task

echo “Successfully completed task…”;

?

在表D中,在调用echo()函数时发生了致命错误,程序执行时到这点被终止,但是却没有任何错误消息给出,用户不知道这种情况还以为程序在正确运行。下面的结论是非常明显的:不给出错误报告非常危险,因为不论过程是否完成它常导致不正确的结论。

注意:调用不带任何参数的error_reporting()将返回当前的错误报告等级。

自定义错误处理器

很明显,隐藏错误报告是不正确的,你肯定想知道有什么其他办法加以改进。自定义错误处理器就是一个很好的能取代PHP默认错误处理系统的解决方法。自定义错误处理器可以以任何方式设置处理错误信息,包括信息如何显示。

PHP函数中,完成这一功能的是set_error_handler()函数。错误发生时,此函数被自动调用,然后给出4个参数:错误代码、错误消息、发生错误的脚本名称和错误出现的行,此函数对错误管理负责。

表E给出一个简单例子:

表E

?php

// define custom handler

set_error_handler(‘myHandler’);

// custom handler code

function myHandler($code, $msg, $file, $line) {

echo “Just so you know, something went wrong at line $line of your script $file. The system says that the error code was $code, and the reason for the error was: $msg. Sorry about this!”;

}

// generate a notice

echo $undefVar;

?

当运行此脚本的时候,会出现下面的信息:

Just so you know, something went wrong at line 11 of your /dev/error1.php. The system says that the error code was 8, and the reason for the error was: Undefined variable: undefVar. Sorry about this!

此时,PHP的默认错误处理器被用户定义的myHandler()函数所取代,$undefVar变量被激活,PHP通知未定义变量的信息,此信息在运行时引擎产生,然后传递给myHandler()函数,同时错误发生的地址也传递给此函数。然后myHandler()函数输出友好信息解释错误。

注意:错误和致命错误很重要,它们会绕过自定义错误处理器,然后以PHP默认的错误处理机制进行显示。显示这些信息可使用前面讨论的标准error_reporting()函数进行控制。

例1:动态错误页面和e-mail警报

表F给出了另一个范例,当发生错误时,将动态产生HTML错误页面,并且通过e-mail向Web管理员进行报告。

表F

?php

// define custom handler

set_error_handler(‘myHandler’);

// custom handler code

function myHandler($code, $msg, $file, $line, $context) {

// print error page

echo “htmlhead/headbody”;

echo “h2 align=centerError!/h2”;

echo “font color=red size=+1”;

echo “An error occurred while processing your request. Please visit our a href=;home page/a and try again.”;

echo “/font”;

echo “/body/html”;

// email error to admin

$body = “$msg at $file ($line), timed at ” . date (“d-M-Y h:i:s”, mktime());

$body .= “nn” . print_r($context, TRUE);

mail (“webmaster@domain.dom”, “Web site error”, $body);

// halt execution of script

die();

}

// generate a notice

echo $undefVar;

?

这里,自定义的错误处理器在遇到错误时动态产生HTML错误页面。此错误信息也能被e-mail信息捕获,然后通过PHP内置的mail()函数发送给管理员。

这里出现了myHandler()函数的一个新参数$context。这是myHandler()函数的第五个参数,是可选项。它包含了当前变量状态的快照。包括对管理员有用的上下文信息,有利于减少调试时间。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/293169.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-25 18:39
下一篇 2024-12-25 18:39

相关推荐

  • 阿里Python技术手册

    本文将从多个方面对阿里Python技术手册进行详细阐述,包括规范、大数据、Web应用、安全和调试等方面。 一、规范 Python的编写规范对于代码的可读性和可维护性有很大的影响。阿…

    编程 2025-04-27
  • 其他字符Python——Python全能编程开发工程师手册

    为了满足不同领域对Python的需求,其他字符Python应运而生。它是一种全能的Python编程语言,提供了许多强大的功能和库,使得编程变得更加简单、高效。在本文中,我们将从不同…

    编程 2025-04-27
  • 如何查Python手册?

    想要进行Python编程,不可避免的要查看官方API文档和手册。Python文档除了包含所有Python模块和其对应的方法和属性外,还提供了包括解释器、语言参考、Python标准库…

    编程 2025-04-27
  • Vue手册详解

    一、Vue的简介 Vue.js是一套构建用户界面的渐进式框架。与其他大型框架不同的是,Vue被设计成可以自底向上逐层应用的。Vue.js核心库只关注视图层,是一款专为构建交互性的W…

    编程 2025-04-25
  • numpy中文手册详解

    一、介绍numpy numpy是一个Python第三方库,提供了数组和矩阵运算的高效操作方法以及各种数学函数的实现,同时numpy也是进行数据分析及科学计算的基础包之一。 引入nu…

    编程 2025-04-23
  • C++手册全面详解

    一、基础语法 C++是一种基于对象的编程语言,基础语法主要包括数据类型、控制语句、函数和指针等。 1. 数据类型: #include <iostream> using …

    编程 2025-04-23
  • PyTorch中文手册详解

    一、PyTorch介绍 PyTorch是当前最热门的深度学习框架之一,是一种基于Python的科学计算库,提供了高度的灵活性和效率,可帮助开发者快速搭建深度学习模型。 PyTorc…

    编程 2025-04-13
  • 深入探究cmake中文手册

    一、概述 cmake是一个跨平台的自动化构建工具,可以生成Makefile、Visual Studio等项目文件。 当我们开始使用cmake时,很难不遇到各种问题。作为一份权威的文…

    编程 2025-04-12
  • Qt手册的全面解析

    一、Qt的介绍 Qt是一款跨平台开发框架,可以方便地在不同的操作系统(如Windows、macOS、Linux等)上构建高质量的桌面、移动和嵌入式应用程序。 Qt由挪威公司Trol…

    编程 2025-02-25
  • 探索pandas手册

    一、理解Pandas Pandas是Python中非常流行的一种数据处理库。它可以处理如同Excel或SQL表格一样的数据集,并提供了非常丰富的数据分析、操作及可视化功能。同时,它…

    编程 2025-02-17

发表回复

登录后才能评论