【问题标题】:PHP data processing not outputtingPHP数据处理不输出
【发布时间】:2017-08-14 20:36:58
【问题描述】:

您好,我正在尝试将此外部文本文件打印到我的 php 文档中。该代码对我来说看起来不错,但是当我回显它时它没有输出任何东西,我不确定这是为什么。任何人都可以帮助我,因为我是新手。

$location = '/Applications/MAMP/htdocs/PHPLabs/branches.txt';
$fp = fopen($location, 'r');
if ($fp) {
$readin = fread($fp);
fclose($fp);
} else {
echo 'Can\'t open input.txt';
}

【问题讨论】:

  • 没有 echo 或 print 声明
  • 你可以考虑php.net/manual/en/function.file-get-contents.php或者只是include($location);
  • @Brian 我确实在代码中有echo $fp;,但它会输出 Resource id #3
  • $fp 是文件指针。 $readin 将包含您的数据,但您应该查看来自 @AbraCadaver 的评论。
  • @madoreo fopen 返回文件指针资源。您是否尝试过使用 fread 检查刚刚读取的数据?

标签: php path echo fread


【解决方案1】:

不确定您要“回显”什么,但您是否首先检查过该文件是否存在?

你的代码可以写成:

$location = '/Applications/MAMP/htdocs/PHPLabs/branches.txt';

if (file_exists($location) && $data = file_get_content($location)){
    echo $data;
} else {
  echo 'File not found';
}

if (file_exists($location) && $file = fopen($location, 'r')){
    $file_content = fread($file, filesize($location));
    fclose($file);
} esle {
    echo 'File not found';
}

更多信息请看这里:http://php.net/manual/en/function.file-get-contents.phphttp://php.net/manual/en/function.filesize.php

【讨论】:

  • 我正在尝试检查对 fopenfclose 的调用是否有效
  • fread 有两个参数:文件句柄和长度。你需要做这样的事情: $file_content = fread(fopen($location, 'r'), filesize($location));
猜你喜欢
  • 1970-01-01
  • 2019-10-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-09-06
  • 2017-06-05
  • 1970-01-01
  • 2021-04-25
相关资源
最近更新 更多