D语言:你如何做Php array();的foreach()?

时间:2011-04-07 19:12:35

标签: php d

我怎样才能正确地将这个$ array和$ object以及foreach()从Php解释为D?

Php(亲):

class Zend_Models
{
    public static function getSome()
    {
      $array = array(
         "a" => "b",
         "b" => "b"
      );
      $object = (object) $array;

      foreach($object as $value)
      {
        $this->view->inject[] = $value;              
      }
      // Zend_Debug::dump($this->view->inject); 
      return "ok";
    }


    public static getAbove() 
    {
      return self::getSome();
    }
}

D(孵化器,做错误):

import std.stdio;

class Zend_Models
{
  void static getSome()
  {
    //?...
  }
}

1 个答案:

答案 0 :(得分:7)

我认为这样做会:

import std.stdio;

class Zend_Models
{
    string getSome()
    {
          auto array = ["a", "b"];

          foreach(value; array)
          {
              this.view.inject ~= value;
          }

          return "ok";
       } 
    }

    string getAbove() {
        return getSome();
    }
}

那就是说,你可能不应该尝试在D中编写PHP。使用异常比返回状态代码更好,如果你确实返回状态代码,enum可能比一个字符串。