Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP] Konczenie wykonywania skryptu z bledem
Forum PHP.pl > Forum > PHP
no-scared
Witam!
Znalazłem na innym forum pytanie, ktore mnie takze nurtuje, i chcialbym zeby ktos na nie konkretnie odpowiedzial

CYTAT:
"
Witam!

Chciałam wiedzieć czy jest taka możliwość:

mam załóżmy taki plik:

Kod
<?php

echo 'bla'
echo 'bla2';

?>


Jak widać po pierwszym echo brakuje srednika i przez to skrypt wygeneruje error:

Kod
Parse error: syntax error, unexpected T_ECHO, expecting ',' or ';' in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\skrypcik.php on line 4


Mi chodzi o coś takiego:

Kod
<?php

echo 'bla'
echo 'bla2';

// moge tu dopisac jakiekolwiek chce polecenia
/*
zapomnij skrypcie ze dotychczas cokolwiek robiles, wiem ze sie zatrzymasz, i nie bedziesz wykonywal dalej bo masz parse errora w kodzie
jednak chce zebys skrypcie wykonywal dalsze polecenia pomimo bledu, takze wyswietl ponizsze teksty
*/

print('dalsza czesc');
print('bla');

?>


Moge dopisywać się do pliku od miejsca z komentarzem "//", nie wczesniej.
Opis sytuacji znajduje sie w komentarzach. Czy da sie cos takiego zrobic?
"

Z góry dziekuje za odpowiedz i pozdrawiam.
wookieb
1) Brak srednika na koncu jednej z liniii (poszukaj jej)
2) Z takimi pytaniami to do googli. Błedy składniowe to nie tutaj
no-scared
wookieb, mam wrazenie ze wogole nie przeczytales tematu, doskonale wiem o tym ze brak srednika.
nospor
@no-scared parse error powoduje przerwanie skryptu i koniec kropka. Nie przeskoczysz tego.

ps: i zgadzam się z tobą: wookieb nie przeczytal dokladnie tematu winksmiley.jpg
wookieb
Faktycznie przepraszam. Ale czesto zdarzaja sie takie sytuacje ze ktos pisze o blachych sprawach. A ja zobaczylem tylko error i myslalem ze chodzi o to smile.gif Przepraszam tongue.gif

Nie da się. Prze tego typu błędach wykonywanie skryptu się kończy.
batman
A tam zaraz nie da się. Widziałem gdzieś rozwiązanie, które wykorzystywało buforowanie i ładnie wykrywało błędy, których normalnie nie wyłapie error_handler. Niestety nie mogę znaleźć tego rozwiązania. Bazowało ono na funkcjach output buffering.


edit
Znalazłem to w komentarzach, ale to nie było to rozwiązanie.
nospor
@batman ale tu nie chodzi o wylapanie bledu, a o dalsze wykonywanie skryptu
batman
Cytat(nospor @ 9.12.2008, 13:31:02 ) *
@batman ale tu nie chodzi o wylapanie bledu, a o dalsze wykonywanie skryptu

Wiem. Właśnie się zastanawiam, jak to przełożyć by ominąć błąd i dalej wykonać skrypt.
wookieb
Nie da się. jak dasz
Kod
echo 'test';

echo 't'

To nie pokaże się nawet 'test' ponieważ przy tego typu błedach skrypt nawet nie rozpoczyna wykonywania skryptu.
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.