Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Instalacja kodu do pliku
MESSIAH :)
post 16.11.2019, 13:15:58
Post #1





Grupa: Zarejestrowani
Postów: 221
Pomógł: 0
Dołączył: 22.12.2011

Ostrzeżenie: (10%)
X----


Szukam jakiegos malego gotowego kodu ktory by instalowal kod pomiedzy kodem w pliku:
Dokladnie to tak to ma wygladac. Otwieram plik php i szukam w nim kodu np:
  1. $a = 34

I teraz dodaje nowa linie:
  1. $a = 34
  2. $b = 35

Chcialbym tez miec jakas kontrole nad tym i np w przyszlosci wymazac dana linie z tego pliku bez wzgledu na kolejnosc usuwania.
Probowalem szukac pod nazwa
Cytat
php install code into file

lecz bez efektu.


--------------------
Go to the top of the page
+Quote Post
Tomplus
post 16.11.2019, 17:06:29
Post #2





Grupa: Zarejestrowani
Postów: 1 565
Pomógł: 185
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


W wielu edytorach jest coś takiego: CTRL + F (H)
Znajdź "ABC" zamień na "ABC\nCBA", zamień w całym pliku/zamień we wszystkich plikach.
Go to the top of the page
+Quote Post
MESSIAH :)
post 16.11.2019, 21:56:22
Post #3





Grupa: Zarejestrowani
Postów: 221
Pomógł: 0
Dołączył: 22.12.2011

Ostrzeżenie: (10%)
X----


Cytat(Tomplus @ 16.11.2019, 17:06:29 ) *
W wielu edytorach jest coś takiego: CTRL + F (H)
Znajdź "ABC" zamień na "ABC\nCBA", zamień w całym pliku/zamień we wszystkich plikach.

facepalmxd.gif
Szanowny kolego to to male dziecko wie. Mi chodzi o cos takiego:
Mam plik php ktory otwiera inne pliki php i dodaje kod zdefiniowany z poprzedniego pliku. Taki instalator kodu php napisany w php.
Mam szkielety plikow gdzie chce dodawac nowe kody. I z czasem chce je w calosci usunac lub zastapic nowymi wersjami.


--------------------
Go to the top of the page
+Quote Post
batman
post 17.11.2019, 01:20:10
Post #4





Grupa: Moderatorzy
Postów: 2 913
Pomógł: 267
Dołączył: 11.08.2005
Skąd: 127.0.0.1




sed. Odpalasz to przy pomocy exec i problem z głowy.


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
--------------------
blog
Kuchnia Kopytka
www.wykangurzeni.pl
Go to the top of the page
+Quote Post
MESSIAH :)
post 20.11.2019, 02:32:47
Post #5





Grupa: Zarejestrowani
Postów: 221
Pomógł: 0
Dołączył: 22.12.2011

Ostrzeżenie: (10%)
X----


Cytat(batman @ 17.11.2019, 01:20:10 ) *
sed. Odpalasz to przy pomocy exec i problem z głowy.

To ma byc w jezyku php a nie unix. Chce aby instalacja odbywala sie z pliku zip lub cos w ten desen.

Ten post edytował MESSIAH :) 20.11.2019, 02:34:08


--------------------
Go to the top of the page
+Quote Post
batman
post 24.11.2019, 22:46:00
Post #6





Grupa: Moderatorzy
Postów: 2 913
Pomógł: 267
Dołączył: 11.08.2005
Skąd: 127.0.0.1




W php wyglądałoby to tak:
- zapisz zawartość pliku do zmiennej (np. przy użyciu file_get_contents)
- użyj str_replace (lub preg_replace, jeśli część szukanej linii jest zmienna)
- zapisz zawartość zmodyfikowanej zmiennej do pliku

Jeśli plik, który chcesz zmodyfikować jest duży, użyj funkcji file i w pętli leć po odczytanych liniach i wstaw nową linię w miejscu, które Ci odpowiada.

edit
Jest jeszcze trzecia możliwość. Wszystkie pliki, które chcesz modyfikować trzymaj jako szablony (możesz użyć, np. Twig). W momencie, gdy chcesz zmodyfikować plik, wyciągasz wszystkie potrzebne dane, przekazujesz je do szablonu i generujesz plik, którym nadpisujesz już istniejący.


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
--------------------
blog
Kuchnia Kopytka
www.wykangurzeni.pl
Go to the top of the page
+Quote Post
MESSIAH :)
post 28.11.2019, 18:37:51
Post #7





Grupa: Zarejestrowani
Postów: 221
Pomógł: 0
Dołączył: 22.12.2011

Ostrzeżenie: (10%)
X----


Ja myslalem bardziej o czyms taki:
1 - Wypakuj plik do temp folder
2 - Otworz wypakowany plik i zapisz wartosc do zmiennej
3 - Otworz docelowy plik ktory ma byc zmieniony i wyszukaj kodu
4 - Dodaj nowy kod po lub przed wyszukanym kodem
5 - Zapisz zmieniony plik
6 - Usun temp folder.

Tylko jak wyszukiwac linie aby instalowac nowy kod a w przyszlosci go usuwac?


--------------------
Go to the top of the page
+Quote Post
Tomplus
post 28.11.2019, 19:03:39
Post #8





Grupa: Zarejestrowani
Postów: 1 565
Pomógł: 185
Dołączył: 20.03.2005
Skąd: Będzin

Ostrzeżenie: (0%)
-----


w PHP też jest funkcja exec()

Ale jak już. Spójrz na kod np. Simple Machine Forum, tam pobierając paczkę możesz zainstalować, tak że nie które pluginy wstrzykują kod w konkretne miejsca, z opcją zwrotną.
Go to the top of the page
+Quote Post
batman
post 29.11.2019, 02:43:11
Post #9





Grupa: Moderatorzy
Postów: 2 913
Pomógł: 267
Dołączył: 11.08.2005
Skąd: 127.0.0.1




  1. <?php
  2.  
  3. // zawartosc pliku
  4. $file = '<?php
  5. $a = 1;
  6. $b = 2;
  7. $c = 3;
  8. ';
  9.  
  10. // linia, po której zostanie dodany nowy kod
  11. $installAfter = '$a = 1;';
  12.  
  13. // kod do "instalacji"
  14. $toInstall = '$aa = 11;';
  15.  
  16. // "instalacja" kodu
  17. $install = str_replace($installAfter, $installAfter.PHP_EOL.$toInstall, $file);
  18.  
  19. echo $install;
  20.  
  21.  
  22. /*
  23. # php script.php
  24.  
  25. <?php
  26. $a = 1;
  27. $aa = 11;
  28. $b = 2;
  29. $c = 3;
  30.  
  31. */


--------------------
I would love to change the world, but they won't give me the source code.
My software never has bugs. It just develops random features.
--------------------
blog
Kuchnia Kopytka
www.wykangurzeni.pl
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.12.2019 - 14:19