在新选项卡中打印 php 数据


Print php data in new tab

我有一个简单的php代码,如下所示:

    //index.php
    $file  = fil1.txt;
    //open file using fopen...
    echo $file;

如果我需要在另一个 php 文件(例如 result.php)的新选项卡中打印我的文件数据,我该怎么办?

这是我的真实代码示例:

function elementStart($parser, $name, $attrs) {
global $depth;
echo str_repeat(" ", $depth * 0); 
//echo "<b>$name</b><br>";     
$depth++; 
    foreach ($attrs as $attr => $value) {
        echo str_repeat("&nbsp;", $depth * 0); 
        echo $value.'<br>';
    }
}
function elementStr($parser, $str) {
    if (strlen(trim($str)) > 0) {
        global $depth;
        echo str_repeat("&nbsp;", $depth * 0); 
        echo $str.'<br>'; 
    }
}
function elementEnd($parser, $name) {
    global $depth;
    $depth--;
}
require_once 'connect.php';
if(isset($_POST['submit1']))
{
$db = new database('localhost', 'root', '', 'database1');
$val = mysql_escape_string($_POST['xml1']); 
$db->query("SELECT * FROM xmltable1 WHERE xmlvalue LIKE '%$val%' LIMIT 1");
if($_POST['submit1'])
{

    if($dbase->numRows() == 0){
        echo 'No rows';
    }
    else{
        foreach($db->rows() as $name){
            //echo $name['xmlvalue'];
            define('FOLDER_PATH', 'C:user/folder1/xmld/');
            $full_path = FOLDER_PATH.$name['xmldata'];
            //echo $full_path;
                    $depth = 0;
                    $file  = $full_path;
                    $xml_parser = xml_parser_create();
                    xml_set_element_handler($xml_parser, "elementStart", "elementEnd");
                    xml_set_character_data_handler($xml_parser, "elementStr");

                    while ($data = fgets($fp)) {
                    thexml_parser_free($thexml_parser);
            }
        }
    }
$dbase->disconnect();
}

在我的函数中有回声。当然,我在当前页面中得到回声,但我需要在新选项卡中回显。

打开一个新标签不是 PHP 应该做的,你可以尝试使用 javascripntk 来实现这样的:

echo <<<EOF
<script>
var win = window.open('about:blank');
var doc = win.document;
doc.write('{$yourdata}');
</script>
EOF;

另一个窗口(或选项卡)中将数据传递到另一个 PHP 文件的唯一方法是使用会话。

在两个 PHP 文件的顶部,启动一个会话

session_start();

索引中.php将文件数据分配给会话变量:

$_SESSION['file_data'] = $file_contents;

结果.php中,打印出数据:

echo $_SESSION['file_data'];