Fórum Root.cz

Hlavní témata => Vývoj => Téma založeno: jentak 04. 01. 2018, 21:18:05

Název: Hledám funkci v PHP pro načítání smíšeného obsahu souboru
Přispěvatel: jentak 04. 01. 2018, 21:18:05
Zdravim,
kdyz nacitam soubor do promene ktery  obsahuje pouze ciste html pouzivam
Kód: [Vybrat]
$var = file_get_contents ('nejaky-soubor.html');co mam ale pouzit za funkci pro nacteni do promene, kdyz ten soubor s cistym html bude obsahuje i nejake php?
Diky dik..
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Kit 04. 01. 2018, 21:55:34
Totéž.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: jentak 04. 01. 2018, 22:33:00
Totéž.
Kdyz pouziju totez, tak se ten kod sice provede ale vypisuji se to zle.

Kód: [Vybrat]
<div id="box">
        <h2>aaaaaaaaaaaaaa</h2>
<?php echo "<p>bbbbbbbbbbbbbbbbbbbbbbb</p>"?>
</div>

vystup je
Kód: [Vybrat]
aaaaaaaaaaaaaa
bbbbbbbbbbbbbbbbbbbbbbb
"; ?>
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: phpguru 04. 01. 2018, 22:55:26
namisto vypisovani to vyevaluj.

Kód: [Vybrat]
<?php
$var 
file_get_contents ('nejaky-soubor.html');
eval(
' ?>
'.$var.'<?php ');
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: jentak 04. 01. 2018, 23:19:46
je to uplne stejny
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Tomas2 04. 01. 2018, 23:23:03
snad by mělo fungovat tohle. Zapne to ob (output buffer), načte soubor jako php (require) a chtělo by to poslat jeho obsah na výstup, ale díky ob_start ho nechá v paměti, ob_get_clean obsah téhle paměti uloží do proměnné. Ob_start se může zanořovat, nemělo by to tedy mít dopad na existující kód. Php ale nemám teď k dispozici, takže ani teď nedokážu ověřit.

Kód: [Vybrat]
ob_start();
require 'nejaky-soubor.html';
$var = ob_get_clean();

PS: phpguru očividně žádný guru není :)
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: jentak 05. 01. 2018, 14:29:05
Toto fungovat bude, ale hledam ciste reseni.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: phpguru 05. 01. 2018, 14:40:19
co je na tom nečistého?
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: j0hny 05. 01. 2018, 14:40:36
Z jednoho scriptu pouštět druhý skrz načítání souboru samo o sobě čisté řešení rozhodně není. Proto bych se nebál použití outpu bufferingu.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: phpguru 05. 01. 2018, 14:47:29
PS: phpguru očividně žádný guru není :)

guru jsem, jen jsem nepochopil přesně co chce.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Tomas2 05. 01. 2018, 15:35:37
guru jsem, jen jsem nepochopil přesně co chce.

to bylo spíše pošťouchnutí, nic proti, až na základě tvoji odpovědi a reakce na ní mi došlo co tazatel chce.

Připojil bych se k otázce co je na output buffering nečistého? Nejedná se o žádný eval, avšak stejně může ovlivnit aktuální context. Ono cpát takhle kód vedle z principu samo nečisté je. Output buffering běžně používají frameworky, tempalte enginy a další udělátka.

Pokud bys chtěl nějakou izolaci, zavolat subprocess nebo dokonce znovu http serveru může být řešení:

Kód: [Vybrat]
$var = shell_exec('php nejaky-soubor.html');

Tady ale narazíš na řadě hostingů, že to nebude fungovat.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: oNeDaL 05. 01. 2018, 15:46:45
Toto fungovat bude, ale hledam ciste reseni.

Jediné čisté řešení je oddělit HTML a PHP. Navždy.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: to_je_jedno 05. 01. 2018, 20:32:07
zkus nam tak nejak rict co je cilem... cucham tady poradny prasarny
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Kit 05. 01. 2018, 21:46:44
Toto fungovat bude, ale hledam ciste reseni.

Jediné čisté řešení je oddělit HTML a PHP. Navždy.

Sám to používám, ale u jiných programátorů jsem to ještě neviděl.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Jan Forman 05. 01. 2018, 22:05:31
taky bych se vsadil, že to bude nějaká příšernost. co takhle načítat externí SQL query pochopitelně aby se rovnou provedla? to už jsem viděl, nic mě nepřekvapí.

mám podezření - už dlouho jsem to neviděl, že přes require/include(); šlo normální načíst i externí zdroj, ale normální lidi to mají určitě zablokovaný v konfiguraci allow_url_include=0

zkus nam tak nejak rict co je cilem... cucham tady poradny prasarny
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: to_je_jedno 05. 01. 2018, 22:21:53
Sám to používám, ale u jiných programátorů jsem to ještě neviděl.
A kolik programatoru znas?
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Jan Forman 05. 01. 2018, 22:24:50
Ideální je to celé rozsekat na malé kousky. Už jen z toho důvodu, že se to nemusí celé nahrávat do paměti, loadujou se pouze části co jsou aktuálně v použití.
Snadno se v tom hledá, protože je jasné, který modul je nahraný. Modul si řekne o svůj ksicht a je to vyladěný.

To je zcela univerzální řešení na všechno od integrace po programování. Rozdělit na core, pluginy, ostatní.
Přilepit do toho QoS,cache kvůli SLA, všechno přes API a jedeme jedeme  :) ale to jsou fakt naprosto samozřejmé věci.


Toto fungovat bude, ale hledam ciste reseni.

Jediné čisté řešení je oddělit HTML a PHP. Navždy.

Sám to používám, ale u jiných programátorů jsem to ještě neviděl.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Jan Forman 05. 01. 2018, 22:34:24
Zapomněl ještě na variantu, že to bude pouze backend a celá aplikace poběží v javascriptu, jak je časté. Tam fakt žádná vizuální reprezentace v backendu nikdy nebude. Bude to sypat jen JSON přes nějaký Swagger like rozhraní :)

Vlastně vůbec nevíme co ten tazatel chtěl udělat a na každou operaci se prostě hodí něco jiného. Pokud chtěl jen naskriptovat něco jednoduchého jednoúčelového je to nakonec zcela jedno jak to udělá.

Sám to používám, ale u jiných programátorů jsem to ještě neviděl.
A kolik programatoru znas?
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: Kit 05. 01. 2018, 22:37:50
Sám to používám, ale u jiných programátorů jsem to ještě neviděl.
A kolik programatoru znas?

To je jedno.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: oNeDaL 11. 01. 2018, 19:34:42
Toto fungovat bude, ale hledam ciste reseni.

Jediné čisté řešení je oddělit HTML a PHP. Navždy.

Sám to používám, ale u jiných programátorů jsem to ještě neviděl.

Bohužel i já to často vidím. Je to jako mor, jak to v nějaké firmě dělá pár lidí, rozšíří se to na celé oddělení.
Název: Re:Hledam funkci v php pro nacitani smiseneho obsahu souboru
Přispěvatel: hluch 12. 01. 2018, 16:00:55
namisto vypisovani to vyevaluj.

Kód: [Vybrat]
<?php
$var 
file_get_contents ('nejaky-soubor.html');
eval(
' ?>
'.$var.'<?php ');

To určitě, vůbec neví jaká bije a ještě evaluace.
Přestaňte mu radit.
Název: Re:Hledám funkci v PHP pro načítání smíšeného obsahu souboru
Přispěvatel: hluch 12. 01. 2018, 16:03:34
a zachráníte koťátko