【问题标题】:Php: array function with fopen/freadphp:带有 fopen/fread 的数组函数
【发布时间】:2011-09-23 23:58:37
【问题描述】:

我是 php 新手,所以请多多包涵。 这是一个粗略的例子,但假设我有一个文件(这显然不起作用:),比如1.php,我有

<?php 
function links1($l1, $l2){echo "<a href='". $l1 ."'><img src='". $l2 ."'/></a>";}
$ext_file = '2.php';
$v1 = fopen($ext_file, 'r');
$data = fread($v1, filesize($ext_file));
//i assume some piece of code has to go here?? Or maybe i need a new approach ...
?>

我基本上是在哪里阅读 2.php 我有的地方

links1("gg1", "1.jpg");
links1("gg2", "2.jpg");
etc...

这样,当我打开 1.php 时,我会看到 1.jpg 2.jpg 等... 怎么做?

如果可能的话,我应该如何修改我只能放的代码

gg1 1.jpg
gg2 2.jpg
gg3 3.jpg
gg4 4.jpg
....

它仍然可以工作吗?

谢谢大家的帮助!

【问题讨论】:

    标签: php function include fopen fread


    【解决方案1】:

    有可能……

    $data = file_get_contents('2.php');
    $data = explode("\n", $data);
    foreach($data as $string){
        list($l1, $l2) = explode(' ', $string);
        links1($l1, $l2);
    }
    

    如果您的行尾设置为 Windows 而不是 UNIX,则它们使用 "\r\n"...

    【讨论】:

      【解决方案2】:

      您可以在 1.php 中简单地 include 2.php。

      <?php 
      function links1($l1, $l2){echo "<a href='". $l1 ."'><img src='". $l2 ."'/></a>";}
      include "2.php";
      ?>
      

      2.php 应该是这样的:

      <?php
      links1("gg1", "1.jpg");
      links1("gg2", "2.jpg");
      

      有 4 种不同类型的包含:

      • include - 包含一个文件,如果文件存在就不要出错(但它会抛出一个警告)。
      • require - 包含一个文件,如果文件不存在则抛出错误。
      • include_once - 仅在以前未包含文件时才包含该文件。
      • require_once - 仅在以前不需要时才包含文件。

      【讨论】:

      • 那行不通。它只输出它在 2.php 中看到的内容。所以当我在浏览器中打开 1.php 时,我看到了 links1("gg1", "1.jpg");链接1("gg2", "2.jpg");
      • 2.php 还应该有一个开始的 PHP 标记,以便它被执行。查看我的编辑。
      • 太棒了,谢谢。现在我将如何让 2.php 看起来 gg1 1.jpg gg2 2.jpg gg3 3.jpg gg4 4.jpg ....
      猜你喜欢
      • 1970-01-01
      • 2012-03-06
      • 1970-01-01
      • 1970-01-01
      • 2012-08-06
      • 2021-05-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多