导航:首页 > 编程语言 > php怎么调试

php怎么调试

发布时间:2023-05-18 19:05:39

phpstorm 怎么断点调试thinkphp

php--xdebug设置 ---phpstorm 断点调试方法如下:
配置好了之后 可以使用 ide的断点调试
Xdebug在PHP中的安装配置涉及php.ini配置文件的修改。
1 、首先需要下载Xdebug,根据安装的PHP版本,选择合适的Xdebug版本,
2 、 安装Xdebug
将下载的php_xdebug-2.1.0-5.3-vc6.dll复制到PHP安装目录下的ext目录,ext目录专门用来存放PHP扩展库DLL文件。
3、 配置php.ini
安装Xdebug的最后一步就是配置php.ini文件,打开C:\php目录下的php.ini配置文件,在末尾添加
[xdebug]
zend_extension = "c:/wamp/bin/php/php5.4.3/ext/php_xdebug-2.2.3-5.4-vc9-nts-x86_64.dll"
xdebug.idekey=PhpStorm
xdebug.remote_enable = On
xdebug.remote_host=localhost
xdebug.remote_port=9000
xdebug.remote_handler=dbgp
4 、重启apache phpinfo()可以看到php--xdebug设置 <wbr>---phpstorm <wbr>断点调试 xdebug的那一块
php--xdebug设置 <wbr>---phpstorm <wbr>断点调试php--xdebug设置 <wbr>---phpstorm <wbr>断点调试
这一栏很长,要注意下面的表格中,xdebug.idekey 这一行内容
php--xdebug设置 <wbr>---phpstorm <wbr>断点调试
5 、然后再配置 phpstorm 里的
php--xdebug设置 <wbr>---phpstorm <wbr>断点调试php--xdebug设置 <wbr>---phpstorm <wbr>断点调试
6 、新建一个调试
php--xdebug设置 <wbr>---phpstorm <wbr>断点调试php--xdebug设置 <wbr>---phpstorm <wbr>断点调试
7 、设置一下 服务器路径和文件名
php--xdebug设置 <wbr>---phpstorm <wbr>断点调试
php--xdebug设置 <wbr>---phpstorm <wbr>断点调试
然后可以随意地打断点,按那个小虫子按钮来调试程序了

Ⅱ php断点调试的几种方法

具体代码如下:
<?php
$ch = curl_init();
$timeout = 5;
curl_setopt ($ch, CURLOPT_URL, '');
curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
$file_contents = curl_exec($ch);
curl_close($ch);
echo $file_contents;
?>
PHP 独特的语法混合了C、Java、Perl以及PHP自创的语法。
它可以比CGI或者Perl更快速地执行动态网页。用PHP做出的动态页面与其他的编程语言相比,PHP是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,
执行效率比完全生成HTML标记的CGI要高许多;
PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。

Ⅲ thinkphp怎么开启调试模式

开启debug调试模式,只需要主入口文件里面定义一个常量。 define(‘APP_DEBUG’,TRUE); //开启调试模式 然后在配置文件config.php里面定义一个参数开启页面trace显示信息,如下 ‘SHOW_PAGE_TRACE’ =>true, //开启页面Trace 这样就已经配置好了

Ⅳ phpstorm 中是怎样调试PHP

## 配置到php
1. 打开php.ini文件
```bash
cd /private/etc/
#默认没有php.ini,需要拷贝一下晌滚罩
sudo cp php.ini.default php.ini
sudo vi php.ini
```
2. 在下面加入
```bash
[Xdebug]
zend_extension="/usr/local/php_user/xdebug.so"
xdebug.remote_enable = on
;xdebug.remote_handler=dbgp
xdebug.remote_host="127.0.0.1"
xdebug.remote_port=9000
xdebug.profiler_enable = 1
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.remote_autostart = on
```
3. 重启`apache`
```bash
sudo apachectl restart
```
4. 查看phpinfo()信息里面搜索一下`debug`如果有,你成功了备陆。
## 配置phpstorm
1. 打开phpstorm,进入顶部导航`phpstrom->perferences..`
2. 点击`php`项,点击`interpreter`后面的`...`按钮
3. 点击`php home`后面的刷新(`...`后面)按钮
4. 这时候你将看到`Debugger: Not installed`变成`Xdebug 2.3.2`(版本号可能不同)
6. 进入`php`栏目下的`Server`,点击`+`新建一个server:host填写你本地的host(如127.0.0.1),点击`apply`保宴闹存,并退出`perferences`对话框。
7. 点击顶部导航`run`->点击`+`->选择`PHP Web Application`->选择上一步新建的`server`,`start URL`填入,你要debug的php文件地址,下面会生成一个地址,这个地址在浏览器应该能正常浏览测试的;点击`apply`进行保存。

## 开始愉快的使用
1. 在你要debug的文件行数字右侧一列,点击一下就会有一个断点。
2. 点击顶部导航`run`->debug,选择你刚刚新建的`debug`名称,这时候会弹出浏览器加载这个php文件了。

Ⅳ phpstorm 中是怎样调试PHP

先安装xdebug,然后再php.ini中配置逗灶
phpstrom右上角爬虫旁边有个下拉按钮,选择第一个,点击按钮后会弹出一个窗,点击窗口山腔扮左上角+号按钮,然后选择圆磨PHP Web Application,填上你的启动名称,选择服务,填写启动路径,选择启动浏览器,保存之后点击爬虫按钮即可

Ⅵ php程序调试方法总结

相信很多朋友们都有调试程序的经历 然而很多时候调试程序是痛苦而又漫长的过程;它不仅需要细心 更需要耐心 切忌心浮气躁 但是当找出问题并顺利解决它时 又会给人无比激动的喜悦 这里总结一下笔者在程序调试中的使用的原则 工具 以及方法 这里需要说明的是 某些原则性的东西 各种语言都是差不多的 而涉及到具体的工具和某些具体的调试方法 这里只涉及web开发方面的内容

总体原则

找出问题原因

程序需要调试 是因为程序有问题 而调试的第一目标是找到原因 常见调试方法 排除法: 当我们面对整个复杂的系统时 常常完全不知道问题出在什么地方;这个时候可以先将与问题不相关的地方排排除 逐渐缩小调试范围 独立模块法: 大部分程序都有模块结构 将可疑模块单独拿出来 模拟输入相应的操作数据 看是否出现问题 比较法 如果程序或系统是基于某个平台时 可以先看看其他基于本平台的程序或系统 找出是平台问题还是本程序问题 很多时候这种方法是用来排除不成熟平台上的隐藏问题 对比法 对于自己实现的程序 可能已经有相应的开源的模块 可以把这些程序源码找出来 和自己的程序进行对比 这样不仅节省时间 还能借鉴别人的优秀之处

问题定位

问题原因的多种多样 可能这个时候你只能知道是什么样的问题 可能与什么相关 这个时候就需将出现的代码段找出来 而需要做到这一步 一般开发环境为我们提供很多实用工具 借助这些工具 可以一步一步地查看程序的输入和输出 根据每一步的输入输出 定位问题

有一部分很厉害的人 可以通过阅读代码 找到出现问题的地方 但是很多问题都是调试者自己因为疏忽造成的 而要通过这样方式去查找问题 几乎是不可能的 因为已经形成固定的思维定势

解决问题

找到问题的原因和相应代码行 解决它很多时候是一件比较简单的事 因为这些问题往往自己疏忽或者自己考虑不周 但是某些时候并不总是这样的 而是由于外部环境造成的 比如你的网站访问的人数增多 你当初没有考虑到这些数据压力 同时也没有考虑到高度并发性的问题 这个时候问题解决起来是你觉得比较棘手 而要解决这样的问题 不仅仅要专注程序 更要从系统架构方面着手 综合各方面的知识 进行全面的考虑

web开发常用调试工具

俗话说 工欲善其石 必先利其器 对于程序的调试 也必须借助外部工具 这里介绍几种在开发web程序中常常用到的工具

xdebug xhprof php性能调试工具 他们都是php的一种扩展 可以很方便的安装和配置 这两个工具主要是将你程序的内部运行状况 调用函数以一种简洁的方式告诉你 让你对程序在什么地方占用过多的资源 那些地方需要进行优化一目了然 顺便提一下 xdebug生成的profile文件一般借助winCacheGrid查看

firephp firbug 前者主要是php的调试工具 而后者是web开发必不可少的工具 它不仅能查看请求 还能调试js css

在ie下面可以使用HttpWatch 如果需要将数据做深入分析 可以使用抓包工具

php中常使用的调试函数 error_report var_mp print_r var_export

mysql apache/nginx的常用的调试技巧 分析他们日志文件也是相当重要 在linux下查看日志文件的常用命令 cat more less grep awk sed

常见的调试技巧和方法

下面以我调试的程序来介绍一下具体的调试方法和技巧

例子 这是一个php开发的游戏引擎 主要功能提供双发球员移动位置 状态 传球 技能等功能控制 整个程序通过xml文件保存结果 突然某天 有两个用户进行比赛 返回的xml不符合正常的结构 从返回的结果来看 球员的移动位置有些不正常 其中少了某些步骤 于是决定从游戏的AI入手查找 但是也没有发现此处有什么异常 最后将输入的球员数据打印出来 然后将中间产生的数据也打印出来 结合程序的处理逻辑 发现是这两个用户有同一个球员 因此导致在处理的时候 两个人的球员出现混乱 找到原因后 就将这个以球员标识改为以球队和球员共同决定即可

例子 程序刚上线 有些热心的朋友们喜欢对程序进行一些压力测试 某次突然 w的请求很大的一个静态资源 直接导致硬盘瘫痪 对于这种情况 必须查看访问日志 才知道发生什么事 否则人家对你攻击了 你还找不到原因 当然对于这样的攻击 直接把静态资源放到cdn上 另外 随着访问用户量的增大 系统的压力增大 反应逐渐变慢 我们不得不考虑 以前只需要 几毫秒能处理的程序 现在需要 几秒 这个时候程序的并发性设计就很重要了 否则会造成数据异常的情况

例子 使用外部软件出现异常 例如使用memcached的时候 如果某台没有启动或者不能使用了 这个时候nginx一般就会对某些使用memcache的请求返回 是不是感觉有点无厘头 可以考虑改写memcahce 的php扩展了

lishixin/Article/program/PHP/201311/21278

Ⅶ thinkphp 页面加载时间长怎么调试

1、在项目配置文件里面打开调试模式DEBUG_MODE,这样能够让你发现大部分的错误原因 。可能影响验证码的输出。

2、如果不想使用调试模式,可以单独开启页面Trace显示。发现很多人不想使用调试模式的原因居然是因为有页面Trace信息的输出,其实这里面有一个误区,以为调试模式就一定会有页面Trace,但其实调试模式和页面Trace没有必然的关系,只是因为打开调试模式后,系统默认的调试配置文件会开启页面Trace显示,所以你完全可以给项目单独定义调试配置文件。

3、使用系统定义的mp函数,该方法同var_mp可以输出任何类型的变量信息,而且更加有利于在浏览器里面查看,例如:
$User=D("User");
$list=$User->findAll();
mp($list);
复制代码
4、页面Trace信息只能显示当前页面执行的sql语句,但无法查看ajax方式执行的后台操作里面的sql语句,所以你还可以开启sql日志记录SQL_DEBUG_LOG来记录每一条执行的sql语句,并且可以查看到每条sql语句的执行时间 sql日志文件位于Logs目录下面,会自动按日期来虚蔽区分每天的sql日志。

5、另外一个是在执行某个数据操作后怀疑sql执行有错误的话,可以使用模型类的getLastSql方法来查看上次执行的sql语句,以便分析具体的错误原因。例如:
$User=D("User");
$User->id=3;
$User->name='ThinkPHp';
$User->save();
echo $User->getLastSql();
//输出结果将为:update think_user set name='ThinkPHP' where id=3;
复制代码
6、当需要调试某段裂码代码的运行时间的时候,可以使用系统提供的debug_start($label)和debug_end($label)方法,例如:
debug_start('demo');
/肆誉哪/这里是你的代码段.......debug_end('demo');

Ⅷ phpstorm 中是怎样调试PHP

phpstorm 中调试PHP的方法步骤:

一、PHP安装xdebug扩磨知展

我使用Laravel Homestead作为开发环境默认已经安装,如果瞎笑消没有安装自行安装下,再继续。

remote_handler 、remote_host、remote_port 这些都有默认值,但还是建议设置下,至少知道要设置这些参数~

二、PhpStorm设置升槐

  1. 检查phpstorm的xdebug配置。这里的debug port要和php.ini里面的xdebug.remote_port相一致!默认是9000,如果9000端口被占用的话,可以改成其他端口。

  2. 设置debug.

    添加server~

    swoole.app是我本地的 webserver~ ~

  3. 开始调试

    打好第一个断点,shift + F9就可以了

    打好第一个断点,选中配置的debug, 按旁边的臭虫 按钮

Ⅸ php 代码如何调试

开启Apache服务器以及MY_SQL数据库。

在PHP集成环境的安装目录“www”文件夹中创建我们需要用到的php文件,1.php.

用Notepad++打开1.php文件,然后输入PHP的语言格式:
<?php ?>

输入标准的输出语言:
<?php
echo "Hello world !" //输出Hello world 语言。 echo 是打印的意思
?>

在网页上输入localhost:8080/1.php可以调试我们自己写的php代码

PHP的简单运算,用$来定义应用数据,输出也是一样。
<?php
$sum=1;
$total=1.22;
$sum=$total+$sum;
echo $sum ?>

Ⅹ php 源码怎么本地调试

PHP本地测试,解决你的问题主要有2种思路:


1、Windows系统下实现。

(1)去网上搜索wamp集成环境包,下载后安装在电脑里。这个集成软件包括了php5, apache服务器,mysql数据库,是windows系统下使用的。

(2)如果你不想用,也可以下载以上3个软件,然后进行自行安装。这种情况下,可以使用windows的IIS服务器,或apache服务器,教程网上有,你可以自己找下。


2、Linux系统下进行测试。

那么你需要自已在电脑原有windows系统下安装Linux系统,Linux可以与windows并存,也可以在虚拟机里安装。然后,在Linux下安装php5,apache服务器,ok后就可以进行本地开发和测试了。


记得给分!!!

阅读全文

与php怎么调试相关的资料

热点内容
把文件夹设锁 浏览:570
命令行语句 浏览:218
企友3e财务如何连接服务器 浏览:984
华为手机如何删除卸载app残留数据 浏览:543
rpm的命令作用 浏览:365
如何查看网站的服务器时间 浏览:850
编译局和人民出版社 浏览:652
java泛型extends 浏览:326
头条程序员教学 浏览:772
安卓合并什么意思 浏览:530
linux在光盘引导 浏览:537
imap服务器地址怎么查 浏览:654
作曲教程pdf 浏览:506
pr怎么压缩文件大小 浏览:863
查看oracle字符集命令 浏览:179
锂电池增加密度 浏览:661
linux用户密码忘记 浏览:242
gb压缩天然气 浏览:635
图片拼接不压缩app 浏览:670
我的世界如何编程 浏览:86