Differences
This shows you the differences between two versions of the page.
|
cor4:app:objects:cinifile [2006/01/29 23:00] ivivan létrehozva |
cor4:app:objects:cinifile [2021/01/05 11:39] (current) |
||
|---|---|---|---|
| Line 7: | Line 7: | ||
| ''CIniFile(string filename)'' | ''CIniFile(string filename)'' | ||
| - | Csak inicializálja a megfelelő értékeket. | + | Megnyitja a megadott nevű ini fájlt. Ha nem létezik ilyen, akkor létrehozza. |
| ===== Metódusok ===== | ===== Metódusok ===== | ||
| - | ==== getCurrentKey ==== | + | ==== getValue ==== |
| - | ''string getCurrentKey()'' | + | ''mixed getValue(string sect, string ident [, mixed default = false])'' |
| - | Visszaadja az aktuális kulcsot (a kulcs olyan a registry-ben, mint a könyvtár a fájlrendszerben). Az kulcs mindig teljes úttal van megadva. A gyökér a következők közül lehet az egyik (a vastagon szedettek érhetők el ténylegesen, a többi rendszer szintű bejegyzés): | + | A ''sect'' szekció ''ident'' azonosítójú elem értékét adja vissza. Ha a megadott elem nem létezik, akkor a visszatérési érték ''default''. |
| - | * **HKEY_CLASSES_ROOT** | + | ==== setValue ==== |
| - | * **HKEY_CURRENT_USER** | + | |
| - | * **HKEY_LOCAL_MACHINE** | + | |
| - | * **HKEY_USERS** | + | |
| - | * HKEY_PERFORMANCE_DATA | + | |
| - | * **HKEY_CURRENT_CONFIG** | + | |
| - | * HKEY_DYN_DATA | + | |
| - | ==== setCurrentKey ==== | + | ''bool setValue(string sect, string ident, mixed value)'' |
| - | ''bool setCurrentKey(string value)'' | + | A ''sect'' szekció ''ident'' elemének értékét állítja ''value''-ra. Ha a megadott szekció illetve elem nem létezik, akkor automatikusan létrehozásra kerül. A visszatérési érték **true** siker esetén, **false** ellenkező esetben. |
| - | Beállítja az aktuális kulcsot, ha a megadott kulcs nem létezik, akkor létrehozza. A kulcs három féleképpen adható meg: | + | ==== setValues ==== |
| - | * teljes elérési úttal (ahogyan a getCurrentKey visszaadja): a ''getCurrentKey''-ben felsorolt gyökér kulcsok valamelyikével kell kezdődnie | + | ''int setValues(array values)'' |
| - | * a gyökértől kezdve: "\" jellel kell kezdeni, ez jelzi, hogy a gyökértől viszonyítunk | + | |
| - | * relatívan: egyébként | + | |
| - | A visszatérési érték **true**, ha a kulcs megváltoztatása sikeres, **false** egyébként. | + | A ''values'' olyan tömb, amiben a tömb egyes elemei a kiírandó sorokat tartalmazzák. A tömb kulcsának <nowiki>"sect.ident"</nowiki> alakúnak kell hogy legyen; amennyiben a kulcs nem tartalmaz pontot illetve a érték nem skalár, akkor az eljárás azt az elemet kihagyja. A végrehajtás ezekután megegyezik a ''setValue'' végrehajtásával. |
| - | ==== getValue ==== | + | A visszatérési érték **-1**, ha a paraméter nem tömb, egyébként a figyelembe vett elemek számát adja vissza. |
| - | ''mixed getValue(string name)'' | + | ==== getSections ==== |
| - | + | ||
| - | Az aktuális kulcs alatti ''name'' nevű elem értékét adja vissza. Ha az elem string tipusú, akkor a visszatérési érték is string tipusú lesz, ha az elem DWORD, akkor a visszatérési érték integer, minden egyéb esetben a visszatérési érték **NULL**. | + | |
| - | + | ||
| - | ==== setValue ==== | + | |
| - | ''bool setValue(string name, mixed value)'' | + | ''array getSections()'' |
| - | Az aktuális kulcs alatti ''name'' nevű elem értékét állítja be ''value''-ra. Ha ''value'' string, akkor az elem is az lesz; ha ''value'' integer, float vagy boolean, akkor az elem DWORD lesz; minden más esetben az értékadás nem történik meg és a visszaadott érték **false** lesz. | + | Az összes szekció nevével tér vissza. |
| - | ==== getValueNames ==== | + | ==== getSection ==== |
| - | ''array getValueNames()'' | + | ''array getSection(string sect)'' |
| - | Az aktuális kulcs alatti elemek nevével tér vissza (az alkulcsok ebben a listában nincsenek benne). | + | A ''sect'' szekció bejegyzéseivel tér vissza. |
| - | ==== getKeyNames ==== | + | ==== getSectionWithValues ==== |
| - | ''array getKeyNames()'' | + | ''array getSectionWithValues(string sect)'' |
| - | Az aktuális kulcs alatti alkulcsok neveivel tér vissza. | + | A ''sect'' szekció bejegyzéseivel és azok értékével tér vissza úgy, hogy a visszatérési tömb minden egyes elemének kulcsa a bejegyzés neve, értéke a bejegyzés értéke. |
| ===== Példa ===== | ===== Példa ===== | ||
| Line 66: | Line 54: | ||
| <?php | <?php | ||
| - | $reg = new CRegistry(); | + | // érdemes teljes elérési utat használni, mert az ini fájlok szabványos helye mindig a WINDOWS könyvtár |
| + | $ini = new CIniFile('D:\Projects\delphi-projects\Cor4App\OnlineApp.ini'); | ||
| - | // a dupla \-ek nem feltétlenül kellenek, de semmiképpen sem ártanak | + | // egy érdekes példa |
| - | $reg->SetCurrentKey('\\Software\\OnlineWeb'); | + | $res = array(); |
| - | + | foreach ($ini->GetSections() as $sect) { | |
| - | // kiírja, hogy "HKEY_CURRENT_USER\Software\OnlineWeb" | + | $res[$sect] = $ini->GetSectionWithValues($sect); |
| - | var_dump($reg->GetCurrentKey()); | + | } |
| - | // beállítja a test elemet 123-ra (mint DWORD) | + | var_dump($res); |
| - | var_dump($reg->SetValue('test',123)); | + | |
| - | // a visszaadott érték 123 (integerként) | ||
| - | var_dump($reg->GetValue('test')); | ||
| - | |||
| ?> | ?> | ||
| </code> | </code> | ||