首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我的代码在作为PHP函数调用时不能输出?

为什么我的代码在作为PHP函数调用时不能输出?
EN

Stack Overflow用户
提问于 2016-10-25 21:24:10
回答 1查看 41关注 0票数 0

在我的文件中,我编写了以下代码:

代码语言:javascript
复制
if ( is_array( $form_data['list'][95] ) ) {
    $i = 1;
    foreach ( $form_data['list'][95] as $row ) {
          /* Uses the column names as array keys */
          $name[$i] = $row['Name'];
          $phonetic[$i] = $row['Phonetic Spelling'];
          if ($phonetic[$i] == ''){$spelling[$i] = '';} else {$spelling[$i] = '('.$phonetic[$i].')';}
          $order[$i] = $row['Order'];
          $full_row[$i] = $order[$i].' - '.$name[$i].' '.$spelling[$i];
          $i++;
    }

rsort($full_row);
    foreach ($full_row as $key => $val) {
    echo "$val<br />";
    }
}

这个很好用。它输出了我期望的列表。但是,如果我试图将它作为一个函数输出,则不会发生任何事情。

代码语言:javascript
复制
function OrderFormatIntros(){
if ( is_array( $form_data['list'][95] ) ) {
    $i = 1;
    foreach ( $form_data['list'][95] as $row ) {
          /* Uses the column names as array keys */
          $name[$i] = $row['Name'];
          $phonetic[$i] = $row['Phonetic Spelling'];
          if ($phonetic[$i] == ''){$spelling[$i] = '';} else {$spelling[$i] = '('.$phonetic[$i].')';}
          $order[$i] = $row['Order'];
          $full_row[$i] = $order[$i].' - '.$name[$i].' '.$spelling[$i];
          $i++;
    }

rsort($full_row);
    foreach ($full_row as $key => $val) {
    echo "$val<br />";
    }
  }
}
OrderFormatIntros();

我需要提供更多的解释吗?还是有一个明确的理由,为什么代码将不会输出时,作为一个函数?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-10-25 21:28:49

OrderFormatIntros函数中的代码不了解$form_data变量的内容;您必须将它传递到函数中,例如:

代码语言:javascript
复制
<?php
function OrderFormatIntros($form_data){
    if ( is_array( $form_data['list'][95] ) ) {
    $i = 1;

    foreach ( $form_data['list'][95] as $row ) {
    /* Uses the column names as array keys */
        $name[$i] = $row['Name'];
        $phonetic[$i] = $row['Phonetic Spelling'];

        if ($phonetic[$i] == ''){$spelling[$i] = '';} else {$spelling[$i] = '('.$phonetic[$i].')';}
            $order[$i] = $row['Order'];
            $full_row[$i] = $order[$i].' - '.$name[$i].' '.$spelling[$i];
            $i++;
        }

        rsort($full_row);

        foreach ($full_row as $key => $val) {
            echo "$val<br />";
        }
    }
}

OrderFormatIntros($form_data);
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40249968

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档