Avatar billede learner Praktikant
27. oktober 2008 - 17:30 Der er 15 kommentarer og
1 løsning

brug af exit; i forbindelse med include()

Hejsa
Vil høre om man kan include() en fil som på et tidspunkt indeholder exit; uden at det stoppper alt

Altså om der findes en måde at bruge exit; uden at den stopper alt, men kun den fil der står exit i.

Altså eks:

1.php:
her er noget html
include(2.php) (alt indtil exit)
her er noget mere html som skal med


2.php
noget php bliver fyret af
exit;
mere php og html som ikke skal vises
Avatar billede showsource Seniormester
27. oktober 2008 - 17:37 #1
Næhh, en exit stopper scriptet.
MEn du jan bruge return i din includefil.
Avatar billede learner Praktikant
27. oktober 2008 - 18:13 #2
okay :o)
Det vidste jeg ik.

Forstår jeg korrekt at jeg indsætter return("noget tekst"); midt i 2.php og så svarer det til echo "noget tekst"; og så fortsætter den ikke yderligere i filen???
Avatar billede showsource Seniormester
27. oktober 2008 - 18:24 #3
njahh,

F.eks.

if(!isset($_GET["noget"])) {
echo"Vælg noget";
return;
}

// resten af includefil, som IKKE vises efter return
Avatar billede olebole Juniormester
27. oktober 2008 - 23:16 #4
<ole>

At bruge return kræver vist, det bruges i en funktion. Derudover er vi nok nødt til at have lidt mere info  =)

/mvh
</bole>
Avatar billede learner Praktikant
28. oktober 2008 - 10:49 #5
Jamen det er ret simpelt. Jeg includerer en fil som skriver noget, og jeg vil gerne have den til at stoppe et sted midt i.
Avatar billede olebole Juniormester
28. oktober 2008 - 10:52 #6
Så bruger du bare exit()
Avatar billede learner Praktikant
28. oktober 2008 - 10:55 #7
eksempel :

index.php:
noget html
include(ccc.php)
noget html


ccc.php:
<?php
//føsrt noget php som ikke resulterer i noget print/echo

// Derefter et resultat af et script
return("resultat");
// evt indsæt exit; her ?? eller hvad?

// Og så kommer det jeg ikke vil have med:
?>
her kommer noget html som ikke skal med




Jeg ved godt jeg kunne lave noget
if (){
  her kommer noget html som ikke skal med
}
men jeg ville høre om man kan undgå det ved at bruge return eller exit i ccc.php
Avatar billede erikjacobsen Ekspert
28. oktober 2008 - 10:56 #8
Ikke nikke nej, Ole. PHP-sproget byder stadig på overraskelse, for man kan bruge return i include-filer, se eksemplet nedenfor. Dertil skal så siges, at bare fordi man KAN, betyder det ikke at det er fornuftlig, gavnligt eller anvendeligt.

http://n0p.com/850600.php

850600.php:
<?php
  print include("850600a.php")
?>

850600a.php:
<?php
  return "Ole skal kigge i manualen";
?>
Avatar billede erikjacobsen Ekspert
28. oktober 2008 - 10:58 #9
learner: hvis du bruger "exit" på det sted du skriver, og ikke får den sidste klump "noget html" med, som står efter din include-sætning - hvordan kan du så lave lovlig HTML med </html> og </body> osv.??
Avatar billede olebole Juniormester
28. oktober 2008 - 11:04 #10
erikjacobsen >> RTFM har alle dage været god latrin - og den slags steder kan man ofte blive overrasket  ;o)

At jeg helt kort foreslog exit skyldes, jeg allerede ret tydeligt havde efterlyst ekstra informationer (f.eks. om struktur) - men da det ønske ikke blev efterkommet, følte jeg mig ikke i overvældende grad kaldet til en større online-quiz. Jeg ville f.eks. selv vælge at lave det med if/else  =)
Avatar billede erikjacobsen Ekspert
28. oktober 2008 - 11:13 #11
Og mit forslag vil være at tænke over problemet (hvad det så er) på en ny måde - fx noget med at smide en masse passende funktioner i include-filerne, og sørge for at forretningslogikken faktisk nogenlunde fremgår af selve PHP-siden.
Avatar billede learner Praktikant
28. oktober 2008 - 11:41 #12
okay, ja jeg kan godt se hvad I mener. må lave det til en funktion i stedet. men var også bare nysgerrig om man kunne gøre det med exit eller return... Ik andet. Ved godt det er lidt noget rod, men...

Men tak for hjælpen begge to. Smid jeres svar :o)
Avatar billede erikjacobsen Ekspert
28. oktober 2008 - 11:55 #13
Ingen point til mig, tak.
Avatar billede showsource Seniormester
28. oktober 2008 - 12:34 #14
Mig bekendt er det ikke ufornuftigt, ugavnligt eller uanvendeligt at bruge return, selvfølgelig afhængig af situation :O)

Brug af return behøver ikke komme "indefra" en funktion.

Jeg er selv "stor fan" af return i filer som includes.
Og det fungerer upåklageligt.
Avatar billede learner Praktikant
28. oktober 2008 - 13:33 #15
okay så det virker, det havde jeg ikke forstået :o)

Men takker :o)
Avatar billede learner Praktikant
27. november 2008 - 01:58 #16
jeg lukker denne tråd. Håber det er ok

Tak for jeres hjælp :o)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester