Best way to find out which php file has generated

2019-01-21 23:37发布

Using Chrome you can right click - Inspect element to see the html code behind that element:

Chrome inspect element example

I wonder how to find which php file has generated that html. Maybe there is some tool to put a breakpoint into the html so the php server will stop when trying to generate it again?

I'm using WordPress locally. I'm on Ubuntu 14.04LMS. I'm using Sublime Text 3 with XDebug.


UPDATE 1

A WordPress plugin able to put, in every file, something like the following would be a good solution (I think from my beginner's viewpoint):

echo '<!-- name_of_the_php_file.php -->';

8条回答
太酷不给撩
2楼-- · 2019-01-22 00:00

Use this plugin "what the file" to find out the php file. Then rest it is to find out a function or something else by CTRL + F in any editor.

I want to add one more plugin which is not exactly for this purpose but it is very popular among WordPress developers and it solves this problem very well. The plugin is Query Monitor.

查看更多
女痞
3楼-- · 2019-01-22 00:04

Another possibility would be to copy an id or class from the html. Then search that string through the source code of the WordPress web application to put a breakpoint at every place where the string appears.

However, the string could be in the database. In that case, this method won't work.

查看更多
神经病院院长
4楼-- · 2019-01-22 00:04

Start page code

<?php
ob_start();
?>

HTML content

...
...

<sapan>Original text</span>

....
...

end page code.

<?php
/*    get and delete current buffer      &&  start a new buffer */
if ((($html = ob_get_clean()) !== false) && (ob_start() === true))
{
    echo preg_replace('~<sapan>Original text</span>~i', '<!-- name_of_the_php_file.php -->', $html, 1);
}
?>

Note: Sory, my English not good.

查看更多
我想做一个坏孩纸
5楼-- · 2019-01-22 00:07

Put an echo in your PHP pages to print their name in an HTML comment based on whether a session variable is set. Then set that session variable and enjoy.

if(isset($_SESSION['printPageName']) && $_SESSION['printPageName']=='true')
{
   echo '<!-- ' . $_SERVER['PHP_SELF'] . ' -->';
}

The reason I say to use a session variable is so you can create some mechanism to where you can occasionally look at this for debug purposes, but users don't normally encounter it.

查看更多
Anthone
6楼-- · 2019-01-22 00:09

First tack a backup of whole websiter, suppose /my-website

1.Right click on element for that you want to find php code

2.Cope CLASS or ID selector of that line

3.Search that CLASS or ID selector in editor inside /my-website folder, for this notepad++ and Dreamweaver editor is best.

查看更多
一夜七次
7楼-- · 2019-01-22 00:14

Hope to find this plugin useful. use to search in files amd wasting enough time. Also i use What the file plugin as suggested before, it is a great way. But i think combining the String Locator this will have extra fun! String Locator

查看更多
登录 后发表回答