PHP扩展Xdebug的安装使用实例
Q:xdebug是什么?
A:xdebug是一个开源的php调试器,以php模块的形式加载并被使用。
上周发现xdebug出了RC(release candidate)2版了,就拿下来安装了一下,顺便写了一个安装手册,希望对大家有用。
linux xdebug模块和相关工具的安装:
测试环境:Ubuntu12.04+PHP 5.3.10
代码如下 | 复制代码 |
# 获取xdebug最新源码包 |
我这边生成的路径为:/usr/lib/php5/20090626+lfs/xdebug.so
然后更改php.ini文件
自行选择增加这些配置选项
代码如下 | 复制代码 |
[xdebug] |
配置完成后可使用php -i|grep xdebug查询配置好的值
windows系统xdebug模块安装
1、去www.xdebug.org下载相应版本php的模块文件,保存下载后的文件到php的ext目录,可以自己修改文件的名称,如保存成:xdebug-2.0.0RC1.dll
2、修改php.ini,增加如下信息
代码如下 | 复制代码 |
[Xdebug] |
参数解释:
zend_extension_ts=”c:/php5/ext/xdebug-2.0.0RC1.dll”
;加载xdebug模块。这里不能用extension=xdebug-2.0.0RC1.dll的方式加载,必须要以zend的方式加载,否则安装上后,phpinfo打印出来的里的xdebug段的会有Must LOADED AS ZEND EXTENSION的警告信息(原因未知)。
xdebug.auto_trace=on;
;自动打开“监测函数调用过程”的功模。该功能可以在你指定的目录中将函数调用的监测信息以文件的形式输出。此配置项的默认值为off。
xdebug.collect_params=on;
;打开收集“函数参数”的功能。将函数调用的参数值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.collect_return=on
;打开收集“函数返回值”的功能。将函数的返回值列入函数过程调用的监测信息中。此配置项的默认值为off。
xdebug.trace_output_dir=”c:/Temp/xdebug”
;设定函数调用监测信息的输出文件的路径。
xdebug.profiler_enable=on
;打开效能监测器。
xdebug.profiler_output_dir=”c:/Temp/xdebug”;
;设定效能监测信息输出文件的路径。
还有一些更为具体的参数设定,详见:http://www.xdebug.org/docs-settings.php
3、重启apache
这样,在本地运行php的时候,会在所设定的目录里产生一些调试信息的文件:
函数调用过程监测信息文件的文件名格式:trace.××××××.xt。这个文件可以直接查看,里面包含了函数运行的时间,函数调用的参数值,返回值,所在的文件和位置等信息。内容格式还是相对直观的。
效能监测文件的文件名格式:cachegrind.out.××××××××。
这个文件也可以直接查看,不过信息格式不易被人类所理解,
所以我们需要接下来的一个软件。
二、安装wincachegrind
由于效能监测文件:cachegrind.out.××××××××文件的内容不易被人类所理解,所以我们需要一个工具来读取它。windows下就有一款这样的软件:wincachegrind。
1、到http://sourceforge.net/projects/wincachegrind/下载安装wincachegrind
2、安装运行后,点击Tools->options,设定你的working folder(php.ini里xdebug.profiler_output_dir的值)
这样就可以比较直观的查看效能监测文件的信息了。
另:不知道是哪个参数没有设定正确,我机器上所有的php的运行后的函数调用过程监测信息都写到了一个trace.××××××.xt中,哪个达人要是知道就给指条明路吧
怎么安装PHP开发环境呢,这个对于php初学者来讲可能是个比较麻烦的事情,他需要安装php,mysql,apache或php mysql iis哦,下面小编来介绍第一种。搭建PHP的开发环境
时间: 8.1日
要求:
手动安装php环境(集成环境不算, 仅winow下即可, linux作参考, 但题linux下也可出).
包括mysql+php+apache+phpadmin, 版本不限. 要求能进行web测试。
安装开发IDE,包括(zend 5+ editplus+emeditor+dreamweaver)
手册:
http://www.php.net/manual/zh/install.windows.php
http://www.php.net/manual/zh/install.windows.apache2.php
http://www.php.net/manual/zh/install.windows.extensions.php
参考内容:
http://www.php.net/manual/zh/install.unix.php
http://www.php.net/manual/zh/install.pecl.php
关注内容:phpinfo, 安装成功不成功, 主要看这个!
======================================
1、apache、mysql、php的windows下的安装顺序
答:apache、mysql要在php前安装,apache和mysql的安装顺序随意
2、开启了php_curl扩展,为什么还会提示没有开启curl服务呢,怎么解决?
答:把PHP目录中的libeay32.dll, ssleay32.dll, php5ts.dll, php_curl.dll文件到system32 目录下后,重启apache
3、在windows下使php工作于apache2.x之中的三种方法?
答:handler、cgi、fastcgi
注:一般模块安装为 handler
========================================
1、当配置好apache php 后在浏览器上输入http://localhost 页面没有相应 是因为没有配置默认页面DirectoryIndex
2、下载 PHP 包时会有这样的问题在下载的PHP 包里没有php5apache2_2.dll扩展,是因为下载包时有两种
3、apache PHP 配置时一般会加上两句话
LoadModule php5_module E:/PHP/php-5.2.10/php5apache2_2.dll #PHP目录
AddType application/x-httpd-php .php #执行php的文件类型
但是总有时会报错 原因看看加的两段有没有多于空格,x-httpd-php后面有空格
==============================================
1.windows下安装环境时,php与apache结合配置时,修改了php与apache的配置文件,重启apache,出现” the requested operation has failed” 如何解决?
答:出现上述错误,无法确定是哪个出问题,可以利用doc命令找出错误原因,首先需进入apache所在目录,然后敲入命令:httpd.exe -w -n "Apache2.2" -k start
下面会有详细信息说明。
需要注意:保证php目录下面 php5_apache2_2.dll文件存在;
在配置apache时注意引入此文件,并指定到正确目录下;
在编辑apache配置时注意空格问题,如果有多余空格,可能会引起错误;
批注:感觉你的问你是php 跟apache 压根就没有建立联系,不怎么清楚
2.windows下安装php+apache+mysql开发环境,如何配置服务器仅处理get和post请求?
答:配置apache的配置文件如下:
<LimitExcept GET POST>
Deny from all
</LimitExcept>
批注:这个没找到
3.myql安装完成,出现不能“Start service”,这是为什么?
答:
<1.出现在以前有安装mysql的服务器上,解决的办法,先保证以前安装的mysql服务器彻底卸载掉了;
<2.检查是否按上面一 步所说,之前的密码是否有修改,如果是重装,并且之前已经设置了密码,在这里更改密码可能会出错,请留空,并将“Modify Security Settings”前面的勾去掉,安装配置完成后另行修改密码;
<3.将mysql安装目录下的data文件夹备份,然后删除,在安装完成后,将安装生成的 data文件夹删除,备份的data文件夹移回来,再重启mysql服务就可以了,这种情况下,可能需要把之前数据库备份;
批注:不知道说得对不对,听着好像是已经装过mysql 但是再装一个就会冲突
==========================================
1,加入调试代码
建立一个debug.php文件。里面可以加入$_GET,$_POST等值。然后在php.ini中设置:include_path = "c:/php",并将debug.php放在此文件夹。
如果想添加公共头尾文件一样可以:
在ini中找到 Automatically add files before or after any PHP document.
auto_prepend_file = auto_prepend_file.php; //依附在头部
auto_append_file = auto_append_file.php; //依附在尾部
2,如何使Html/PHP格式的字符串不被解释,而是照原样显示
例子:
PHP";
代码如下 | 复制代码 |
Echo "被解释过的: ".$str."经过处理的:"; Echo htmlentities(nl2br($str)); //两次转换后输出。 ?> |
3,如何配置GD库
1:拷贝dlls文件夹里所有dll文件到system32目录下c:windowssystem32
2:打开php.ini
设置extension_dir = "c:/php/extensions/";
3:extension=php_gd2.dll;把extension前面的逗号去掉,如果没有php_gd2.dll,php_gd.dll也一样,保证确实存在这个文件c:/php/extensions/php_gd2.dll
注: 一般用环境变量, 不需要把dlls文件夹考到c:windowssystem32
===================================================锫奕
1,在判断$_POST全局变量是否有传递过来的参数时,用if可以吗?
答:建议用isset(),if属于判断语句,其里面的变量必须是已经被定义过的,所以不能用if。
批注: 全局变量也称为外部变量,它是在函数外部定义的变量。
注: isset() 判断变量有无声明, 然后再判断其他。如果懒,可以用empty()
$_POST 是全局变量,那就说明它已经是定义过的,所以能用
2,form表单提交时,提交的什么内容?
答:在提交时,提交的是标签的name和value属性,其中name作为键值,value作为数组元素,如果标签没有name属性,那么就不会提交。
批注:我不知道你的提交是指什么,但是我知道如果有提交地址他会找到那个地址,提交后的那个值是空的。是这意思吗?
注: 表单提交时, 如果是get, 就是get, 如果是post, 有编码方式的区别!可以注意一下!另外, 有的最然有name, 但无值时, 用 isset()取不到真。
3,什么是会话?
答:当一个用户访问一个网站时就会建立一个会话,与服务器进行交流,当整个网站的所有页面都被关闭时,会话结束,session也被释放了。
批注: 就WEB开发来说,一个会话就是你通过浏览器与服务器之间的一次通话,只不过这种通话是以用浏览器浏览的方式来实现的
这是我百度的 ,不知道对不,我也不怎么懂。但是看上去像那回事,tom讲解
注:会话是浏览器和服务器间保持的一个会话, 会话不是全局级的, 是用户全局级的。一般情况下,这种会是浏览器生命周期, 浏览器关闭, 会话结束! 当然这个也可以配置。见php.ini中的session部分。 当你新打开一个窗口时, 会启动一个新会话,但你从一个旧窗口中打开新窗口, 不会生成新会话(可测一下)。
=======================================================
1.局域网内两台机器apache 可不可以互相访问
可以
修改httpd.conf的配置就可以了。
加入ip是192.168.0.1(这是一个局域网内网ip)
修改Listen的配置为
Listen 192.168.0.1:80 然后重启apache
另外:第一,服务器的防火墙要关,如果你是用xp系统的话,系统自带的防火墙一定要关。
第二,配置问题
代码如下 | 复制代码 |
<Directory "C:/Apache2.2/htdocs"> Order allow,deny Allow from all </Directory> |
批注: 1. 加入ip是192.168.0.1(这是一个局域网内网ip) 这个应该是在 WindowsSystem32driversetchosts 中加吗?
Tom注:域名配置只是将本机的域名指向哪个IP, 但访问时,也会反host名带过去!
服务器需要配置虚拟主机监控这个IP, 根据host名设分流, 才能访问。
2. 为什么要修改这个 Listen的配置
注: 表示服务器监听哪个端口
2.php扩展库出ext外还有其他的吗?比如说连接mysql外的数据库的dll,该去哪找?
有很多扩展库,例如curl等,也可以自己写。php_dba.dll和php_oci8.dll应该是php自带的,常用的应该都在php/ext中。
注: window下的dll库,除了自带的外,其他需外他人或自已编译dll. 手册上有如何编译的方法。
3.php怎么发布一个完整的网站项目(windows/linux/unix),直接放在www目录下就可以了吗
答案(网上查的)
a. 代码仓库直接发布
在服务器上 svn export ....
b. 如果服务器很多,
(1)在一台发布 服务器上 svn export ...
(2) 然后向别的服务器推送, rsync ....
批注: 看不懂
注: 只要能发上就行。
=======================================================
1、apache、mysql、php在windows下的过程
答:首先安装apache或mysql数据库,两个都安装成功后,最后安装php
2.安装完成后本地搭建链接在线项目,因数据库链接使用pdo,如何开启pdo扩展?
答:把PHP目录中的php_pdo.dll文件拷贝到system32 目录下,然后打开php.ini,找到extension=php_pdo.dll;把extension前面的分号去掉
3.如何在本地自定义域名访问本地项目,如在本地搭建分站项目
答:链接自定义,例如定义访问地址为:bendi.homelink.com.cn,打开目录:C:WINDOWSsystem32driversetc,找到hosts文件并打开,在末行加入127.0.0.1 bendi.homelink.com.cn,关闭保存!
之后打开httpd.conf进行编辑,加入:
代码如下 | 复制代码 |
NameVirtualHost *:80 <VirtualHost *:80> ServerAdmin 邮箱地址 DocumentRoot 项目存放路径 ServerName bendi.homelink.com.cn </VirtualHost> |
加入后保存关闭,之后重启apache和浏览器就可以直接以自定义域名进行访问了
curl 是使用URL语法的传送文件工具,支持FTP、FTPS、HTTP HTPPS SCP SFTP TFTP TELNET DICT FILE和LDAP。curl 支持SSL证书、HTTP POST、HTTP PUT 、FTP 上传,kerberos、基于HTT格式的上传、代理、cookie、用户+口令证明、文件传送恢复、http代理通道和大量其他有用的技巧。php安装好后默认是没有启用curl功能扩展的,下面几个步骤可以开启此项功能扩展。
windows 安装curl
1、打开PHP安装目录,搜索以下三个文件 ssleay32.dll、libeay32.dll和 php_curl.dll,一一拷贝到系统目录下的system32文件夹下,
2、修改php.ini文件,找到;extension= php_curl.dll行,去掉前面的;号,保存,重启服务器。
3、测试,在站点目录下建立一个PHP文件,内容如下
代码如下 | 复制代码 |
$ch = curl_init(“http://www.111cn.net”); |
linux安装curl
假如原先编译的php目录在/usr/local/php5目录下;
apache在/usr/local/apache2目录下;
php源代码在/home/kevin125/src目录下。
如果实际目录与假定的目录不一致,则在下面的命令中做调整。
1. 找到当前运行的php版本的源代码目录,如 php-5.2.10。
进入curl扩展库目录。
代码如下 | 复制代码 |
$cd /home/kevin125/src/php-5.2.10/ext/curl |
2. 调用phpize程序生成编译配置文件。
代码如下 | 复制代码 |
$/usr/local/php5/bin/phpize |
3. 编译扩展库,分别执行下面的configure和make命令。
代码如下 | 复制代码 |
$./configure –with-php-config=/usr/local/php5/bin/php-config |
configure这一步执行通过后,再执行make命令,如果configure执行不通过,则查找错误原因。
$make
make成功执行后,生成的扩展库文件在当前目录的 modules 子目录下,如 /home/kevin125/src/php-5.2.10/ext/curl/modules/curl.so
4. 配置php.ini文件
将编译好的扩展库文件复制到apache2 modules目录下。
代码如下 | 复制代码 |
$cp /home/kevin125/src/php-5.2.10/ext/curl/modules/curl.so /usr/local/apache2/modules/ |
找到php.ini文件所在目录位置,然后编辑。可以通过查看phpinfo信息来确定php.ini文件位置。
在php.ini文件中找到设置扩展目录的位置,然后将扩展路径设置到apache2 modules目录下
代码如下 | 复制代码 |
extension_dir = “/usr/local/apache2/modules/” |
在php.ini的设置扩展库位置,设置要添加的扩展库。
代码如下 | 复制代码 |
extension=curl.so |
我们先要去官网下载下载php_xdebug.dll,2.将下载的php_xdebug.dll放到PHP的安装目录phpext下,然后在编辑php.ini文件
代码如下 | 复制代码 |
[xdebug] |
4.重启Apache。
5.写一个test.php,内容为<?php phpinfo(); ?>,如果输出的内容中有看到xdebug,说明安装配置成功。或者去/home/ad/xdebug_log下看看是不是日志已经出来了。
Xdebug部分配置选项说明
xdebug.auto_trace = 1
是否允许Xdebug跟踪函数调用,跟踪信息以文件形式存储,默认值为0
collect_params = 1
是否允许Xdebug跟踪函数参数,默认值为0
xdebug.collect_return = 1
是否允许Xdebug跟踪函数返回值,默认值为0
xdebug.profiler_enable = 1
打开xdebug的性能分析器,以文件形式存储,这项配置是不能以ini_set()函数配置的,默认值为0
xdebug.profiler_output_dir
性能分析文件的存放位置,默认值为/tmp
xdebug.profiler_output_name
性能分析文件的命名规则,默认值为cachegrind.out.%p
xdebug.trace_output_dir
函数调用跟踪信息输出文件目录,默认值为/tmp
xdebug.trace_output_name
函数调用跟踪信息输出文件命名规则,默认为trace.%c
设置选项
Category | Setting | Description |
---|---|---|
日志 |
xdebug.trace_output_dir |
日志追踪输出目录 |
xdebug.trace_output_name | 日志文件名,xdebug提供了一系列的标识符,生成相应格式的文件名,具体请参考官网 | |
xdebug.trace_options | 记录添加到文件中方式:1 = 追加(如果存在该文件). 0 (default) = 覆盖(如果存在该文件) | |
显示数据 | xdebug.collect_params | 非零值 = 控制function的参数显示选项
|
xdebug.collect_return | 1 = 显示function返回值. Default 0 不显示 | |
xdebug.collect_vars | 1 = 显示当前作用域使用了哪些变量,显示变量名,该选项不会记录变量的值,如果需要,使用xdebug.collect_params | |
xdebug.collect_assignments | 1 = 添加一行显示变量赋值(若为1,形如$a = 1;这类Assignment Expression会在trace文件里显示) | |
格式 | xdebug.trace_format |
|
xdebug.show_mem_delta | 1 = 显示每次函数调用内存消耗(内存差) | |
行为 | xdebug.auto_trace | 1 = 打开自动追踪. (追踪方式有2种,一种是自动追踪,所有php脚本运行时,都会产生trace文件;另一种是触发方式追踪,如下) |
xdebug.trace_enable_trigger[2] |
1 = 使用 XDEBUG_TRACE GET/POST 触发追踪, 或者通过设置cookie XDEBUG_TRACE. 为了避免每次请求时,都会生成相应trace追踪文件,你需要把auto_trace设置为0 注:该特性只在2.2+版本才能设置 |
|
限制 | xdebug.var_display_max_depth | 数组和对象元素显示深度:主要用在数组嵌套,对象属性嵌套时,显示几级的元素内容. Default 3. |
xdebug.var_display_max_data | 变量值为字符串时显示多长. Default 512. | |
xdebug.var_display_max_children | 数组和对象元素显示的个数. Default 128 |
一些自定义函数
Function | Description |
---|---|
void xdebug_enable() | 手动打开,相当于xdebug.default_enable=on |
void var_dump() | 覆写php提供的var_dump,出错时,显示函数堆栈信息,(前提:php.ini里html_errors为1),使用xdebug.overload_var_dump 设置是否覆写 |
void xdebug_start_trace( string trace_file_path [, integer options] ) |
手动控制需要追踪的代码段 trace_file_path :文件路径(相对或绝对,若为空).如果为空,或者不传参, 使用xdebug.trace_output_dir设置的目录 options :
|
void xdebug_stop_trace() | 停止追踪,代码追踪在该行停止 |
string xdebug_get_tracefile_name() | 获得输出文件名,与 xdebug.auto_trace配合使用. |
void xdebug_var_dump([mixed var[,...]]) | 输出变量详细信息,相当于php里的var_dump,具体显示请看这里 |
xdebug.show_local_vars | 默认为0,不显示;非零时,在php执行出错时,显示出错代码所在作用域所有本地变量(注:这会产生大量信息,因此默认是closed),具体显示差别如下图[3] |
array xdebug_get_declared_vars() | 显示当前作用域中已声明的变量 |
array xdebug_get_code_coverage() | 显示某一段代码内,代码执行到哪些行[4] |
今天安装cacti发现需要php sockets扩展,而现在的lnmp没有安装,于是想到了phpzie工具安装扩展,安装方法如下:
linux中打开sockets扩展
代码如下 | 复制代码 |
1.cd php-5.3.8/ext/sockets/ |
接着在/etc/php.ini添加加载扩展代码:
代码如下 | 复制代码 |
1.extension=sockets.so |
windows下打开sockets扩展
如果你没有打开,请编辑你的php.ini文件,去掉下面这行前面的注释:
extension=php_sockets.dll
如果你无法去掉注释,那么请使用下面的代码来加载扩展库:
代码如下 | 复制代码 |
<?php if(!extension_loaded(‘sockets’)) { if(strtoupper(substr(PHP_OS, 3)) == “WIN”) { dl(‘php_sockets.dll’); } else { dl(‘sockets.so’); } } ?> |
相关文章
- 由于要使用mikoomi mongodb plugin插件,所以需要php对mongodb的扩展支持,默认通过源安装的php并没有mongodb的扩展支持,具体可以通过php -m|grep mongo 验证 。这里就结...2016-11-25
- 编译安装非常的简单了我们现在的php版本已经到了php7了,下文小编来为各位介绍一篇关于PHP7快速编译安装的步骤,希望文章能够帮助到各位。 一、安装必要一些依赖 yum...2016-11-25
- 有时为了网站安全和版权问题,会对自己写的php源码进行加密,在php加密技术上最常用的是zend公司的zend guard 加密软件,现在我们来图文讲解一下。 下面就简单说说如何...2016-11-25
- ps软件是现在很多人都会使用到的,HSL面板在ps软件中又有着非常独特的作用。这次文章就给大家介绍下ps怎么使用HSL面板,还不知道使用方法的下面一起来看看。  ...2017-07-06
- 这篇文章主要介绍了Rstudio中安装package出现的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
- 安装curl扩展支持https是非常的重要现在许多的网站都使用了https了,下面我们来看一篇关于PHP安装curl扩展支持https例子吧。 问题: 线上运行的lamp服务器,默认yu...2016-11-25
- 许多的朋友对于Plesk控制面板应用不是非常的了解特别是英文版的Plesk控制面板,在这里小编整理了一些关于Plesk控制面板常用的使用方案整理,具体如下。 本文基于Linu...2016-10-10
- PHP-FPM我们相信各位用高版本的php经常使用到了,下面整理了一些关于PHP-FPM的笔记,有兴趣的可进来看看。 今天赶上了123System OPenVZ VPS全场半价的机会,购入了一...2016-11-25
使用insertAfter()方法在现有元素后添加一个新元素
复制代码 代码如下: //在现有元素后添加一个新元素 function insertAfter(newElement, targetElement){ var parent = targetElement.parentNode; if (parent.lastChild == targetElement){ parent.appendChild(newEl...2014-05-31jQuery 1.9使用$.support替代$.browser的使用方法
jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support 。 在更新的 2.0 版本中,将不再支持 IE 6/7/8。 以后,如果用户需要支持 IE 6/7/8,只能使用 jQuery 1.9。 如果要全面支持 IE,并混合...2014-05-31使用percona-toolkit操作MySQL的实用命令小结
1.pt-archiver 功能介绍: 将mysql数据库中表的记录归档到另外一个表或者文件 用法介绍: pt-archiver [OPTION...] --source DSN --where WHERE 这个工具只是归档旧的数据,不会对线上数据的OLTP查询造成太大影响,你可以将...2015-11-24- 大概有如下步骤 新建项目Bejs 新建文件package.json 新建文件Gruntfile.js 命令行执行grunt任务 一、新建项目Bejs源码放在src下,该目录有两个js文件,selector.js和ajax.js。编译后代码放在dest,这个grunt会...2014-06-07
如何使用php脚本给html中引用的js和css路径打上版本号
在搜索引擎中搜索关键字.htaccess 缓存,你可以搜索到很多关于设置网站文件缓存的教程,通过设置可以将css、js等不太经常更新的文件缓存在浏览器端,这样访客每次访问你的网站的时候,浏览器就可以从浏览器的缓存中获取css、...2015-11-24- 一、下载 mysqlsla [root@localhost tmp]# wget http://hackmysql.com/scripts/mysqlsla-2.03.tar.gz--19:45:45-- http://hackmysql.com/scripts/mysqlsla-2.03.tar.gzResolving hackmysql.com... 64.13.232.157Conn...2015-11-24
- C#注释的一些使用方法浅谈,需要的朋友可以参考一下...2020-06-25
Linux安装Pytorch1.8GPU(CUDA11.1)的实现
这篇文章主要介绍了Linux安装Pytorch1.8GPU(CUDA11.1)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-25- 这篇文章主要介绍了vscode安装git及项目开发过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-19
安装和使用percona-toolkit来辅助操作MySQL的基本教程
一、percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检查master和slave数据的一致性 有效地对记录进行归档 查找重复的索...2015-11-24- 目前,JSON已经成为最流行的数据交换格式之一,各大网站的API几乎都支持它。我写过一篇《数据类型和JSON格式》,探讨它的设计思想。今天,我想总结一下PHP语言对它的支持,这是开发互联网应用程序(特别是编写API)必须了解的知识...2015-10-30
- 基本思路: 通过使用jquery选择器得到对应表单的jquery对象,然后使用attr方法修改对应的action 示例程序一: 默认情况下,该表单会提交到page_one.html 点击button之后,表单的提交地址就会修改为page_two.html 复制...2014-06-07