🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: pl.comp.lang.php
Article #1716

Re: rekurencja?

#1716
From: MeHundo
Date: Thu, 30 Aug 2001 08:43
50 lines
2955 bytes
leming nine wrote:

>> mam takie banalne pytanko: czy php wspiera rekurencje?
> 
> co masz na myśli? chodzi o "wydajnościowe hacki" zastosowane
> w interpreterze (bo jeśli to, to nic nie wiem), czy może po
> prostu o konstrukcję języka - czy coś takiego jest możliwe?
> 
> Jeśli to drugie, to wystarczy wiedzieć, że istnieją tam pętle
> jak rówineż funkcje. Sam sobie możesz odpowiedzieć :) -- l9

dzieki za info...
moze sprecyzuje. nie dziala mi taka procedurka i juz w miedzyczasie  
dotarlem w manualu do tematu recursion ;]
jest tam wskazane uzywanie zmiennych static jesli maja przetrwac 
rekurencyjne wywolanie funckji, ale nie za bardzo wiem jak ja tutaj 
zastosowac:

        function resolve_post($post_id, $re_level){
            static $qresult;
                include("db_vars.php");
                $_mysql=mysql_pconnect($host,$username,$password) or die
                        ("brak polonczenia");
                mysql_select_db($db);
                $query="select id,subject,visitor_id,
                        DATE_FORMAT(posted,'%d-%m-%Y') as fdate
                        from forum where id_next=$post_id
                        order by posted desc";
                //echo $query . " " . $post_id . " " . $re_level . "<BR>";
                $qresult=mysql_query($query);
                echo mysql_num_rows($qresult) . "<BR>";
                while($row=mysql_fetch_array($qresult)){
                        echo str_repeat("+",$re_level) . "(" . 
$row["fdate"] . ") " .
                                $row["visitor_id"] . " -=- " . 
$row[subject] . "<BR>";
                        resolve_post($row["id"],$re_level+1);
                }
//              $mysql_free_result($qresult);
        }
        resolve_post(0,0);
?>

ma ona wybierac rekordy z tabeli.... a rekurencyjnie dlatego, ze rekordy 
tworza hierarchie na zasadzie kazdy ma rodzica. co najwazniejsze po 
pierwszej iteracji poprawnie podaje wynik i wskakuje do 2.giej, tam tez, 
ale po powrocie poziom wyzej juz nie pamieta zmiennej qresult, w ktora 
wskazuje na zdrodlo rekordow.

thx
Technical Details
Message-ID: <9mkubt$htn$1@news.tpi.pl>
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.icm.edu.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mail
References: <9mk3gp$bm7$1@news.tpi.pl> <9mkg6q$qsr$1@okapi.ict.pwr.wroc.pl>

Show Full Headers
Complete Article Headers
Path: mbox-mo1.pugleaf.net!news-archive.icm.edu.pl!pingwin.icm.edu.pl!mat.uni.torun.pl!news.man.torun.pl!news.icm.edu.pl!newsfeed.tpinternet.pl!news.tpi.pl!not-for-mail
From: MeHundo <yanquie@bigfoot.com>
Newsgroups: pl.comp.lang.php
Subject: Re: rekurencja?
Date: Thu, 30 Aug 2001 10:43:41 +0200
Organization: tp.internet - http://www.tpi.pl
Lines: 50
Message-ID: <9mkubt$htn$1@news.tpi.pl>
References: <9mk3gp$bm7$1@news.tpi.pl> <9mkg6q$qsr$1@okapi.ict.pwr.wroc.pl>
Reply-To: yanquie@bigfoot.com
NNTP-Posting-Host: pi161.wroclaw.sdi.tpnet.pl
Mime-Version: 1.0
X-Trace: news.tpi.pl 999161021 18359 217.96.152.161 (30 Aug 2001 08:43:41 GMT)
X-Complaints-To: usenet@tpi.pl
NNTP-Posting-Date: 30 Aug 2001 08:43:41 GMT
User-Agent: KNode/0.6.1
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit