tami: Closures und Rekursion

Beitrag lesen

hi,

Hello,

Ich mach doch keine Doppelpostings hier.

Und ich möchte keine "anderer Weg Quick Fuck"-Lösung, sondern die Beantwortung der Frage.

  • geht, aber so...
  • geht, geht nicht, weil ...

OOP bleibt also für die direkte Beantwortung _meiner_ Frage außen vor!

Es steht Dir aber hoffentlich niemand im Wege, wenn Du hier eine komplette Lösung für die Aufgabenstellung in OOP liefern Würdest.

Die hast Du schon selbst geliefert. Muss man doch nur kurz umstellen:

  
<?php  
  
// ich würde aber file_get_contents und file_put_contents nehmen meine ich ...  
class IniHandler {  
    private $fp;  
    private $maxdepth;  
    public function ini_read($fp)  
    {  
        if (!$fp) return false;  
        if (!@flock($fp, LOCK_EX)) return false;  
        if (false === ($_fstat = @fstat($fp))) return false;  
        if (false === ($cont = fread($fp, $_fstat['size']))) return false;  
        if (false === ($_data = @parse_ini_string($cont, true))) return false;  
        return $_data;  
    }  
    private function writeparams($_values, $arraykey, $depth)  
    {  
  
            foreach ($_values as $key => $param)  
            {  
                    if ($depth >= 1)  
                    {  
                            $arraykeytxt = $arraykey . "[$key]";  
                    }  
                    else  
                    {  
                            $arraykeytxt = $key;  
                    }  
  
                    if (is_array($param))  
                    {  
                        $depth++;  
                        if ($depth <= $this->maxdepth)  
                            {  
                                    writeparams ($param, $arraykeytxt, $depth, $this->fp, $this->maxdepth);  
                            }  
                    }  
                    else  
                    {  
                            fwrite ($this->fp, "$arraykeytxt = '$param'" . PHP_EOL);  
                    }  
            }  
            return true;  
    }  
    public function ini_write($fp, $_data, $filename, $maxdepth=3)  
    {  
            $this->fp = $fp;  
            $this->maydepth = $this->maxdepth;  
            $depth = 0;  
            $arraykey = '';  
  
            foreach ($_data as $section => $_value)  
            {  
                    if (is_array($_value))  
                    {  
                fwrite ($fp, PHP_EOL . "[$section]" . PHP_EOL);  
  
                    if ($depth < $this->maxdepth)  
                            {  
                                $this->writeparams ($_value, $_value, $depth);  
    #                            writeparams ($_value, $section, $depth, $fp, $this->maxdepth);  
                            }  
                    }  
                    else  
            {  
                fwrite ($fp, "$section = '$_value'" . PHP_EOL);  
            }  
            }  
    }  
}  

macht auch ggfs. Sinn, die nötigen Daten erstmal dem Konstruktor zu übergeben. Vielleicht aber auch nicht ...;
S.a. http://framework.zend.com/apidoc/2.0/classes/Zend.Config.Reader.Ini.html

mfg

tami

0 52

Closures und Rekursion

Tom
  • php
  1. 0
    1UnitedPower
    1. 0
      tami
      1. 0
        1UnitedPower
        • javascript
        1. 0
          tami
    2. 0
      Tom
      1. 0
        tami
      2. 0
        1UnitedPower
        1. 0
          Tom
          1. 0
            tami
  2. 0
    tami
    1. 0

      Closures und Rekursionm, please Pimp my Knowledge

      Tom
      1. 0
        tami
  3. 0
    molily
    1. 0
      Tom
      1. 0
        tami
    2. 0
      Tom
      1. 0
        tami
        1. 0
          Tom
          1. 0
            tami
            1. 0
              tami
              1. 0

                Wann machen Closures in PHP überhaupt Sinn?

                tami
                1. 0
                  Tom
                  1. 0
                    tami
                    1. 0
                      Tom
                      1. 0
                        tami
                2. 0
                  mrjerk
                  1. 0
                    tami
                    1. 0

                      Closures im Zend Framework

                      tami
                      1. 0
                        Tom
                        1. 0
                          tami
                      2. 0
                        tami
                        1. 0
                          tami
                          1. 2
                            1UnitedPower
                            • zu diesem forum
                            1. 0
                              tami
                              1. 0

                                Closures im Zend Framework und bei php.net

                                tami
                                1. 0

                                  Closures im Zend Framework und bei php.net = anonyme Funktionen

                                  tami
                                  • php
                                  1. 0
                                    tami
                    2. 0
                      Tom
                      1. 0
                        tami
            2. 0
              Tom
              1. 0
                tami
              2. 0
                tami
                1. 0
                  Tom
                  1. 0
                    tami
  4. 0

    Closures und Rekursion. into the depth

    Tom
    1. 0
      tami
    2. 0
      1UnitedPower
      1. 0

        Fehler gefunden

        Tom
        1. 0
          1UnitedPower
    3. 0
      Tom
      1. 0

        New messages from "dem schönen Oberharz" (Forumsidee!)

        Matthias Apsel
        • zu diesem forum