Foreach生成选项

时间:2016-05-12 12:33:17

标签: php

很难从字面上解释我想要什么,但我会尝试展示一些例子......我需要为特定的$_POST生成一个函数,其中这个帖子的输出为'0'和'1'应该是'不'和'是',这里有一些代码可以帮助你们理解:

    private function createTraineeList($treineiro) {
       $row = '';

       foreach ($treineiro as $value) {
          $row .= '<option value="'. $value['training'] .'">'. 'description doesn't have a post' .'</option>';
       }

    return $row;
   }

$treineiro应为$_POST['training'],返回0或1。

我正在使用一个函数来创建变量,我可以将这个特定的行放入html中,只需调用我在变量中设置的名称。

问题是,这段代码是错误的,我不知道如何正确使用它,不幸的是我认为没有人会得到我真正需要的东西,但是值得一试。

编辑1:代码中没有'描述没有帖子',这是我做的一个引用,因为我真的不知道该放什么。

3 个答案:

答案 0 :(得分:3)

在这里更改,使用转义序列\

      $row .= '<option value="'. $value['training'] .'">'. 'description doesn\'t have a post' .'</option>';

同时检查以更好地理解:http://www.homeandlearn.co.uk/php/php7p7.html

答案 1 :(得分:0)

您可能想看看这个:

    <?php




        private function createTraineeList($treineiro) {
            $row = '';

            // FOREACH MIGHT BE VERY UNNECESSARY SINCE IT IS EITHER 1 OR 0
            // JUST USE A SIMPLE "IF" LIKE SO:
            // AND IF $treineiro IS EITHER 0 OR ONE WHAT IS THE MEANING OF THE $value IN YOUR FOREACH LOOP?
            //foreach ($treineiro as $value) {
            if($treineiro){
                // THE SINGLE QUOTE IN THE "doesn't" NEEDS TO BE ESCAPED.. 
                $row .= '<option name="training" value="'. $treineiro .'">'. 'description doesn\'t have a post' .'</option>';
            }else{
                // I DON'T KNOW WHAT YOU WANT TO DO HERE ....
            }

            return $row;
       }

这是另一种假设$ treineiro是一个具有多个值的数组......

        private function createTraineeList($treineiro) {
            $row = '';      
            // THIS ASSUMES THAT THE VARIABLE $treineriro CONTAINS MORE THAN ONE VALUE....
            foreach ($treineiro as $value) {
                $row .= '<option name="training" value="'. $treineiro .'">'. 'description doesn\'t have a post' .'</option>';
            }

            return $row;
        }

答案 2 :(得分:0)

好的,所以我找到了一个解决方案,我现在感觉非常愚蠢,因为没有考虑过这个问题,但是,嘿,那是开发人员的生活,对吗?

 private function createTraineeList() {
    $row = '';

    if (isset($_POST['training'])) {
        if ($_POST['training'] == '0') {
            $row .= '<option value="0" selected="selected">Não</option>
                     <option value="1">Sim</option>';
        } else if ($_POST['training'] == '1') {
            $row .= '<option value="0">Não</option>
                     <option value="1" selected="selected">Sim</option>';
        }

    } else {
        $row .= '<option value="0">Não</option>
                 <option value="1">Sim</option>';
    }

    return $row;
}

随便欺负我,我配得上它。