Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php]include do zmiennej
Forum PHP.pl > Forum > Przedszkole
sylar
Witam.

mam plik aaa.php:
Cytat
<?php
echo "jakis";
echo "Tam";
echo "Tekst";
?>


jak zrobić aby wynik tego aaa.php wkleić do zmiennej?

chodzi mi o coś typu:
$zmienna = include("aaa.php");

a wynikiem ma być:
$zmienna = "jakisTamTekst";

Z php mam styczność od paru tygodni, więc proszę o prostą pomoc.


_______________________________
Działająca odpowiedź na pytanie znaleziona dzięki mike'owi:
dokładny kod, to
Cytat
<?php
ob_start();
$buffer = ob_get_contents();
include 'aa.php';
$output = substr(ob_get_contents(),strlen($buffer));
ob_end_clean();
$result = $output;

echo $result;
?>


Czyli w skorcie wlanczam buforowanie wyjscia, dolanczam plik, odczytuje
zawartosc bufora, przypisuje go do zmiennej i wylanczam buforowanie.
Hazel
Plik aaa.php:
  1. <?php
  2. $zmienna1 = 'jakis';
  3. $zmienna2 = 'Tam';
  4. $zmienna3 = 'Tekst';
  5. // jeśli chcesz wyświetlić w pliku aaa.php do przeglądarki "jakisTamTekst", 
  6. // to napisz:
  7. // echo $zmienna1.$zmienna2.$zmienna3;
  8. // a jeśli nie to olej ten komentarz
  9. ?>


Drugi plik:
  1. <?php
  2. include 'aaa.php';
  3. $zmienna = $zmienna1.$zmienna2.$zmienna3;
  4. // teraz wartością zmiennej $zmienna jest 'jakisTamTekst'
  5. // myślę, że o to Ci chodziło
  6. ?>
DawidF
A nie prościej ten tekst wstawić do funkcji?

  1. <?php
  2. function pokazTekst() {
  3. echo "jakis";
  4. echo "Tam";
  5. echo "Tekst";
  6. }
  7. ?>


Potem możesz go sobie wyświetlać

  1. <?php
  2. pokazTekst();
  3. ?>


wrzucać do zmiennej

  1. <?php
  2. $zmienna = pokazTekst();
  3. ?>


Tak chyba byłoby prościej...
Hazel
Każdy robi jak chce...
Oczywiście, obie formy są równoważne, możesz sobie wybrać, którą chcesz smile.gif
mike
Cytat(DawidF @ 24.08.2007, 12:06:40 ) *
wrzucać do zmiennej

  1. <?php
  2. $zmienna = pokazTekst();
  3. ?>
Wyświetlic tak, ale z tym wrzuceniem przesadziłeś tongue.gif
Sprawdź jak to zadziała a potem pisz na forum. Ustrzeżesz się pisania głupot (tak jak w tym przypadku).

P.S.
Tak naprawdę to wszystkie powyższe rozwiązania są błędne. Bo nie realizują tego co chce autor. Naginacie conieco żeby się udało.
Co jeśli autor nie chce zmieniać pliku aaa.php?
Powinno być tak:
  1. <?php
  2.  
  3. include("aaa.php");
  4. $zmienna = ob_get_flush();
  5.  
  6. ?>
Hazel
Autor nie napisał, czego właściwie chce, a że problem ma kilka rozwiązań, to każdy z nas podał inne - Twoje jest tak samo beznadziejne jak nasze - czyli działa równie poprawnie...
Niby czemu miałby nie chcieć modyfikować skryptu aaa.php, jeśli tego nie napisał?
Niczego nie naginam, a jeśli twóca tematu wyraźnie zakomunikowałby, że chce rozwiązania, które nie zmienia pliku aaa, to dałbym takie rozwiązanie, jak Ty. sciana.gif

Jeśli uważasz, że ten post nie dotyczy tematu, to go skasuj. dry.gif
sylar
Cytat(Hazel @ 24.08.2007, 12:06:39 ) *
Plik aaa.php:
  1. <?php
  2. $zmienna1 = 'jakis';
  3. $zmienna2 = 'Tam';
  4. $zmienna3 = 'Tekst';
  5. // jeśli chcesz wyświetlić w pliku aaa.php do przeglądarki \"jakisTamTekst\", 
  6. // to napisz:
  7. // echo $zmienna1.$zmienna2.$zmienna3;
  8. // a jeśli nie to olej ten komentarz
  9. ?>


Drugi plik:
  1. <?php
  2. include 'aaa.php';
  3. $zmienna = $zmienna1.$zmienna2.$zmienna3;
  4. // teraz wartością zmiennej $zmienna jest 'jakisTamTekst'
  5. // myślę, że o to Ci chodziło
  6. ?>


sprawa nie jest taka prosta.
w rzeczywistości plik aaa.php zawiera ok 1400 linijek w tym dziesiątki zmiennych, funkcji i kilka pętli
tak więc ten sposób odpada sad.gif
mike
Cytat(sylar @ 24.08.2007, 12:01:32 ) *
jak zrobić aby wynik tego aaa.php wkleić do zmiennej?
Cytat(Hazel @ 24.08.2007, 12:22:54 ) *
Autor nie napisał, czego właściwie chce, (...)
Ty, no jak twierdzisz, że autor tego nie napisałe, to coś przegapiłeś.Rozumiem, że Twoje rozwiązanie działa na danych przykładowych, które podał autor? Jesli tak twierdzisz to chyba tego nawet nie sprawdziłeś.Jak odpowiadasz na coś to odpowiadaj na zadany pytania a nie na to co Tobie się wydaj eza ktoś mógł chccieć a jak nie to na cokolwiek tongue.gif
Cytat(sylar @ 24.08.2007, 12:27:18 ) *
sprawa nie jest taka prosta.w rzeczywistości plik aaa.php zawiera ok 1400 linijek w tym dziesiątki zmiennych, funkcji i kilka pętlitak więc ten sposób odpada sad.gif
Co więc rozumiesz pod pojęciem "wynik działania"? To co wświetli ten plik? Jeśli tak to masz na tacy to co napisałem.Ale bardzo ważne jest żebyś zrobił tak:
  1. <?php$zmienna = include(&#092;"http://adres.pl/aaa.php\");?>
a nie tak:
  1. <?php$zmienna = include(&#092;"aaa.php\");?>
sylar
Cytat(Hazel @ 24.08.2007, 12:22:54 ) *
Autor nie napisał, czego właściwie chce, a że problem ma kilka rozwiązań, to każdy z nas podał inne - Twoje jest tak samo beznadziejne jak nasze - czyli działa równie poprawnie...Niby czemu miałby nie chcieć modyfikować skryptu aaa.php, jeśli tego nie napisał?Niczego nie naginam, a jeśli twóca tematu wyraźnie zakomunikowałby, że chce rozwiązania, które nie zmienia pliku aaa, to dałbym takie rozwiązanie, jak Ty. sciana.gif Jeśli uważasz, że ten post nie dotyczy tematu, to go skasuj. dry.gif
już dokładnie mówię co chce:do textarea wklejasz tekst, który jest później przez php konwertowany (tekst nie jest przypadkowy, więc można z niego wyciągnąć zmienne i później uporządkować je wg wzoru). Następnie przekonwertowany tekst (aaa.php) jest wyświetlany na stronie, a obok jest kolejny textarea, w którym mabyć ten sam kod, jednak lekko zmodyfikowany przez funkcje str_replace.dlatego podałem banalny przykład aaa.php, bo chcę na nim zrozumieć jak to zrobić na bardziej zaawansowanym przykładzie.
Cytat(mike @ 24.08.2007, 12:30:52 ) *
Ty, no jak twierdzisz, że autor tego nie napisałe, to coś przegapiłeś.Rozumiem, że Twoje rozwiązanie działa na danych przykładowych, które podał autor? Jesli tak twierdzisz to chyba tego nawet nie sprawdziłeś.Jak odpowiadasz na coś to odpowiadaj na zadany pytania a nie na to co Tobie się wydaj eza ktoś mógł chccieć a jak nie to na cokolwiek tongue.gif Co więc rozumiesz pod pojęciem "wynik działania"? To co wświetli ten plik? Jeśli tak to masz na tacy to co napisałem.Ale bardzo ważne jest żebyś zrobił tak:
  1. <?php[/php]a nie tak:[php]?>
niestety i tak nie działa :(jak robię bez http://adres.pl/ to zamiast wpisać kod do zmiennej, to wyświetla normalną stronę sad.gif a jak z, tomain(http://www.adres.pl/aaa.php) [function.main]: failed to open stream: Connection refused in...
sylar
Cytat(mike @ 24.08.2007, 12:12:17 ) *
Wyświetlic tak, ale z tym wrzuceniem przesadziłeś tongue.gif
Sprawdź jak to zadziała a potem pisz na forum. Ustrzeżesz się pisania głupot (tak jak w tym przypadku).

P.S.
Tak naprawdę to wszystkie powyższe rozwiązania są błędne. Bo nie realizują tego co chce autor. Naginacie conieco żeby się udało.
Co jeśli autor nie chce zmieniać pliku aaa.php?
Powinno być tak:
  1. <?php
  2. include(&#092;"aaa.php\");
  3. $zmienna = ob_get_flush();
  4.  
  5. ?>


guitar.gif yahoo.gif

dzięki. O coś takiego mi chodziło biggrin.gif

dokładny kod, to
Cytat
<?php
ob_start();
$buffer = ob_get_contents();
include 'aa.php';
$output = substr(ob_get_contents(),strlen($buffer));
ob_end_clean();
$result = $output;

echo $result;
?>


Czyli w skorcie wlanczam buforowanie wyjscia, dolanczam plik, odczytuje
zawartosc bufora, przypisuje go do zmiennej i wylanczam buforowanie. (spytałem google i takie znalazłem rozszerzenie do Twojej podpowiedzi)

raz jeszcze dzięki.
piotr485
fajne rozwiązanie, też szukałem coś takiego czyli :
  1. include('aaa.php');
  2. $zmienna = ob_get_flush();


ale jak zrobić, żeby plik aaa.php się nie wyświetlał w tym miejscu ?
Turson
Nie prościej
$zmienna = file_get_contents("aaa.php")
questionmark.gif
StevDefs
Buy Tadapox Online Keflex For Cats levitra professional Macrobid 100mg Buy Now Losec 20mg Tablets Online Walmart Candianpharmacies
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.