Nu skal du efterlade et interface, hvor brugerne kan ændre lignende konfigurationsfiler via webinterfacet, hovedmetoden er at kalde Linux-shellen scrip{filter}t fra PHP, så nu indsæt en Linux-shell, der kan ændre denne konfigurationsfil.
Først er konfigurationsfilen formateret som følger:
Eksempler er som følger, config.ini:
Konfigurationsfilen indeholder 3 enheder, der repræsenterer 3 hovedaspekter: database, forretning, offline; Hver enhed har sit eget feltnavn og feltværdi.
Bloggen nævnt ovenfor kan læse sådan en konfigurationsfil, og indtil videre vil vi ændre denne konfigurationsfil gennem Linux-shellen.
Vi designede et program kaldet modify_config_file og ændrede det med et format som ./modify_config_file unit1-field1=changed_value1 unit2-field1=changed_value2 (parametre kan tilføjes efter behov).
Det er ikke svært at opnå muligheden for at ændre konfigurationsfilen, 20-30 linjer kan løse problemet. Men baseret på princippet om "alle input er skadelige" er det nødvendigt at tilføje forskellige fejltoleranceprocesser til shellen; hvis brugerparameterinputtet er forkert, for at kunne minde brugeren om det i tide og lokalisere problemet, er følgende baseret på en sådan original intention med shellen, selvfølgelig navnet er modify_config_file:
Brugeren ændrer konfigurationen med følgende kommando:
Outputtet er som følger:
Blandt dem angiver den første linje, at linjenummerintervallet, hvor FORRETNINGSENHEDEN er placeret, skal være opmærksom på åbningsintervallet; Den anden linje repræsenterer alle match-til-feltlinjenumre, da der kan være flere enheder af samme felt; Den tredje linje angiver feltlinjenummeret, der til sidst falder ind i enhedsintervallet; Den fjerde linje repræsenterer resultatet af revisionen af rækken.
Derudover er det meget sandsynligt, at brugerinputtet ikke overholder formatet, og følgende fejl vil blive rapporteret og målrettet:
Hvis du vil anvende det på andre konfigurationsfiler, skal du ændre stien og filnavnet på konfigurationsfilen i scriptet:
|