mirror of
https://gitlab.com/harald.mueller/aktuelle.kurse.git
synced 2024-10-19 18:05:02 +02:00
207 lines
17 KiB
HTML
207 lines
17 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
|
||
<html>
|
||
<head>
|
||
<title>Funktion zum Unterverzeichnisse / Dateien zählen</title>
|
||
<link rel="stylesheet" type="text/css" href="../../src/self.css">
|
||
<meta name="description" content="Zählt alle Dateien und Unterverzeichnisse">
|
||
<meta name="keywords" content="SELFPHP, PHP, Verzeichnis">
|
||
<meta name="author" content="Damir Enseleit, mail@selfphp3.de">
|
||
<meta name="DC.Contributer" content="Matthias Hupp, m.hupp@selfphp3.de">
|
||
<meta name="DC.Publisher" content="Damir Enseleit, mail@selfphp3.de">
|
||
<meta name="DC.Date" content="2003-02-27T12:18+01:00">
|
||
<meta name="DC.Identifier" content="http://www.selfphp.info">
|
||
<meta name="DC.Language" content="de">
|
||
<meta name="DC.Rights" content="../../editorial/index.php">
|
||
<meta name="SELF.Firstdate" content="2001-08-06T12:18+01:00">
|
||
<meta name="SELF.Version" content="1">
|
||
<meta name="SELF.Pagetype" content="Information">
|
||
<meta name="SELF.Path" content="SELFPHP == ../../index.php // Funktionsreferenz == ../index.php // Array-Funktionen == index.php">
|
||
</head>
|
||
<body bgcolor="#FFFFFF" text="#000000" link="#AA5522" vlink="#772200" alink="#000000">
|
||
|
||
<table cellpadding="4" cellspacing="0" border="0" width="100%">
|
||
<tr>
|
||
<td bgcolor="#FFEEDD" class="nav"><a class="an" name="top"><img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"></a>
|
||
<a href="../../index.html"><b>SELFPHP</b></a>/<a href="../../navigation/index.html">Navigationshilfen</a>
|
||
<img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von">
|
||
<a href="../index.html"><b>Tipps & Tricks</b></a> <img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von">
|
||
<a href="index.html"><b>Verzeichnisse</b></a></td>
|
||
</tr>
|
||
</table>
|
||
<table cellpadding="4" cellspacing="0" border="0" width="100%">
|
||
<tr>
|
||
<td bgcolor="#EEEEEE" class="doc" width="110"><img src="../../src/logo.gif" width="106" height="109" border="0" alt="SELFPHP"></td>
|
||
<td bgcolor="#EEEEEE" class="doc" valign="bottom" width="50%">
|
||
<h2>Funktion zum Unterverzeichnisse / Dateien zählen</h2>
|
||
<td bgcolor="#EEEEEE" class="doc" valign="bottom" width="50%">
|
||
<tr>
|
||
<td bgcolor="#EEEEEE" class="doc" valign="top" align="center"> <img src="../../src/dokx.gif" width="30" height="20" vspace="6" border="0" alt="Informationsseite">
|
||
</td>
|
||
<td bgcolor="#FFFFFF" valign="top" nowrap colspan="2">
|
||
<p> <img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"> <a href="#autor"><b>Autor</b></a><br>
|
||
<img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"> <a href="#beispiel"><b>Beispiel</b></a><br>
|
||
<img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"> <a href="#beschreibung"><b>Beschreibung</b></a><br>
|
||
<img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"> <a href="#download"><b>Download</b></a><br>
|
||
</p>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td colspan=3 bgcolor="#EEEEEE" class="doc"><a href="#bottom"><img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"></a> </td>
|
||
</tr>
|
||
</table>
|
||
|
||
|
||
|
||
<h2 class="Sh2"><a class="an" name="autor">Autor</a></h2>
|
||
|
||
|
||
|
||
<table width="100%" cellpadding=10><tr>
|
||
<td class="xmpcode" bgcolor="#E4EEFF"><b>Name:</b> Matthias Hupp<br>
|
||
<b>Email:</b> <a href="mailto:Matthias Hupp <m.hupp@selfphp.info>">m.hupp@selfphp.info</a><br>
|
||
<b>Website:</b> <a href="http://www.selfphp.info" target="_blank">http://www.selfphp.info</a></td>
|
||
</tr></table>
|
||
|
||
<p> </p>
|
||
|
||
<table bgcolor="#EEEEEE" class="doc" width="100%"><tr><td>
|
||
<a href="#top"><img src="../../src/up.gif" width="14" height="10" border="0" alt="nach oben"></a><a href="#bottom"><img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"></a> 
|
||
</td></tr></table>
|
||
|
||
<h2 class="Sh2"><a class="an" name="beispiel">Beispiel</a></h2>
|
||
<img src="../../src/serverdok.gif" width="15" height="10"> <a href="http://www.selfphp.com/tipps_tricks/verzeichnisse/count_file_beispiel.php" target="_blank"><b>Anzeigebeispiel:
|
||
So sieht's aus (Online)</b></a><br>
|
||
<br>
|
||
<table width="100%" cellpadding=10 height="66">
|
||
<tr>
|
||
<td class="xmpcode" bgcolor="#E4EEFF" valign="top">
|
||
<code><font color="#000000">
|
||
<font color="#0000BB"><?PHP
|
||
<br /> </font><font color="#007700">function </font><font color="#0000BB">count_file</font><font color="#007700">(</font><font color="#0000BB">$dir</font><font color="#007700">)
|
||
<br /> {
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// Ueberprueft ob das angegebene Verzeichnis existiert
|
||
<br /> </font><font color="#007700">if(</font><font color="#0000BB">is_dir</font><font color="#007700">(</font><font color="#0000BB">$dir</font><font color="#007700">))
|
||
<br /> {
|
||
<br /> </font><font color="#0000BB">$afile</font><font color="#007700">[</font><font color="#0000BB">directory</font><font color="#007700">]=</font><font color="#0000BB">0</font><font color="#007700">;
|
||
<br /> </font><font color="#0000BB">$afile</font><font color="#007700">[</font><font color="#0000BB">file</font><font color="#007700">]=</font><font color="#0000BB">0</font><font color="#007700">;
|
||
<br />
|
||
<br /> </font><font color="#0000BB">chdir</font><font color="#007700">(</font><font color="#0000BB">$dir</font><font color="#007700">);
|
||
<br /> </font><font color="#0000BB">$handle</font><font color="#007700">=</font><font color="#0000BB">opendir</font><font color="#007700">(</font><font color="#DD0000">"."</font><font color="#007700">);
|
||
<br /> while(</font><font color="#0000BB">$file</font><font color="#007700">=</font><font color="#0000BB">readdir</font><font color="#007700">(</font><font color="#0000BB">$handle</font><font color="#007700">))
|
||
<br /> {
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// Handelt es sich bei $file um ein Unterverzeichnis?
|
||
<br /> </font><font color="#007700">if(</font><font color="#0000BB">is_dir</font><font color="#007700">(</font><font color="#0000BB">$file</font><font color="#007700">) && </font><font color="#0000BB">$file</font><font color="#007700">!=</font><font color="#DD0000">"." </font><font color="#007700">&& </font><font color="#0000BB">$file</font><font color="#007700">!=</font><font color="#DD0000">".."</font><font color="#007700">)
|
||
<br /> {
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// directory um eins erhoehen
|
||
<br /> </font><font color="#0000BB">$afile</font><font color="#007700">[</font><font color="#0000BB">directory</font><font color="#007700">]++;
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// rekursiver Aufruf mit aktuellem Verzeichnis
|
||
<br /> </font><font color="#0000BB">$y</font><font color="#007700">=</font><font color="#0000BB">count_file</font><font color="#007700">(</font><font color="#0000BB">$file</font><font color="#007700">);
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// Ergebnisse des rekursiven Aufrufs der Funktion zu
|
||
<br /> // directory und file aufaddieren
|
||
<br /> </font><font color="#0000BB">$afile</font><font color="#007700">[</font><font color="#0000BB">directory</font><font color="#007700">]+=</font><font color="#0000BB">$y</font><font color="#007700">[</font><font color="#0000BB">directory</font><font color="#007700">];
|
||
<br /> </font><font color="#0000BB">$afile</font><font color="#007700">[</font><font color="#0000BB">file</font><font color="#007700">]+=</font><font color="#0000BB">$y</font><font color="#007700">[</font><font color="#0000BB">file</font><font color="#007700">];
|
||
<br /> }
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// Handelt es sich bei $file um eine Datei?
|
||
<br /> </font><font color="#007700">if(</font><font color="#0000BB">is_file</font><font color="#007700">(</font><font color="#0000BB">$file</font><font color="#007700">))
|
||
<br /> {
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// file um eins erhoehen
|
||
<br /> </font><font color="#0000BB">$afile</font><font color="#007700">[</font><font color="#0000BB">file</font><font color="#007700">]++;
|
||
<br /> }
|
||
<br /> }
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// Verzeichnisstruktur zurueck gehen
|
||
<br /> </font><font color="#007700">if(</font><font color="#0000BB">stristr</font><font color="#007700">(</font><font color="#0000BB">$dir</font><font color="#007700">,</font><font color="#DD0000">"../"</font><font color="#007700">)) </font><font color="#0000BB">chdir</font><font color="#007700">(</font><font color="#0000BB">$_SERVER</font><font color="#007700">[</font><font color="#DD0000">"DOCUMENT_ROOT"</font><font color="#007700">].</font><font color="#0000BB">substr</font><font color="#007700">(</font><font color="#0000BB">$_SERVER</font><font color="#007700">[</font><font color="#DD0000">"PATH_INFO"</font><font color="#007700">],</font><font color="#0000BB">0</font><font color="#007700">,</font><font color="#0000BB">strrpos</font><font color="#007700">(</font><font color="#0000BB">$_SERVER</font><font color="#007700">[</font><font color="#DD0000">"PATH_INFO"</font><font color="#007700">],</font><font color="#DD0000">"/"</font><font color="#007700">)));
|
||
<br /> elseif(</font><font color="#0000BB">$dir</font><font color="#007700">!=</font><font color="#DD0000">"."</font><font color="#007700">) </font><font color="#0000BB">chdir</font><font color="#007700">(</font><font color="#DD0000">"../"</font><font color="#007700">);
|
||
<br />
|
||
<br /> </font><font color="#0000BB">closedir</font><font color="#007700">(</font><font color="#0000BB">$handle</font><font color="#007700">);
|
||
<br /> }
|
||
<br />
|
||
<br /> return </font><font color="#0000BB">$afile</font><font color="#007700">;
|
||
<br /> }
|
||
<br />
|
||
<br /> </font><font color="#FF8000">// Aufruf der Funktion
|
||
<br /> </font><font color="#0000BB">$dir</font><font color="#007700">=</font><font color="#DD0000">"."</font><font color="#007700">;
|
||
<br /> </font><font color="#0000BB">$atest</font><font color="#007700">=</font><font color="#0000BB">count_file</font><font color="#007700">(</font><font color="#0000BB">$dir</font><font color="#007700">);
|
||
<br /> echo</font><font color="#DD0000">"<br />DIRECTORIES: "</font><font color="#007700">.</font><font color="#0000BB">$atest</font><font color="#007700">[</font><font color="#0000BB">directory</font><font color="#007700">];
|
||
<br /> echo</font><font color="#DD0000">"<br />FILES: "</font><font color="#007700">.</font><font color="#0000BB">$atest</font><font color="#007700">[</font><font color="#0000BB">file</font><font color="#007700">];
|
||
<br /> echo</font><font color="#DD0000">"<br />"</font><font color="#007700">;
|
||
<br />
|
||
<br /> </font><font color="#0000BB">$dir</font><font color="#007700">=</font><font color="#DD0000">"../"</font><font color="#007700">;
|
||
<br /> </font><font color="#0000BB">$atest</font><font color="#007700">=</font><font color="#0000BB">count_file</font><font color="#007700">(</font><font color="#0000BB">$dir</font><font color="#007700">);
|
||
<br /> echo</font><font color="#DD0000">"<br />DIRECTORIES: "</font><font color="#007700">.</font><font color="#0000BB">$atest</font><font color="#007700">[</font><font color="#0000BB">directory</font><font color="#007700">];
|
||
<br /> echo</font><font color="#DD0000">"<br />FILES: "</font><font color="#007700">.</font><font color="#0000BB">$atest</font><font color="#007700">[</font><font color="#0000BB">file</font><font color="#007700">];
|
||
<br /></font><font color="#0000BB">?></font>
|
||
</font>
|
||
</code> </td>
|
||
</tr>
|
||
</table>
|
||
<p> </p>
|
||
<table bgcolor="#EEEEEE" class="doc" width="100%"><tr><td>
|
||
<a href="#top"><img src="../../src/up.gif" width="14" height="10" border="0" alt="nach oben"></a><a href="#bottom"><img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"></a> 
|
||
</td></tr></table>
|
||
|
||
<h2 class="Sh2"><a class="an" name="beschreibung">Beschreibung</a></h2>
|
||
<table width="100%" cellpadding=10 height="156">
|
||
<tr>
|
||
<td class="xmpcode" bgcolor="#E4EEFF" height="57" valign="top"><p>Die Funktion count_file() zählt alle Dateien und Unterverzeichnisse des<br>Verzeichnisses $dir auf. Dabei kann es sich um das aktuelle Verzeichnis, ein<br>Unterverzeichnis oder ein Übergeordnetes Verzeichnis handeln.<br><br>Als Übergabeparameter wird ein Verzeichnis angeben. Ausgehend von dem<br>Verzeichnis aus dem die Funktion aufgerufen wird (aktuelles Verzeichnis).<br>Beispiele:<br>"." – aktuelles Verzeichnis<br>"../../" – Übergeordnetes Verzeichnis<br>"beliebiger PFAD" – Unterverzeichnis<br><br>Das Ergebnis wird in Form eines assoziatives Arrays zurückgegeben, das folgende<br>Elemente enthält:<br>directory – Anzahl der Verzeichnisse<br>file – Anzahl der Dateien</p></td>
|
||
</tr>
|
||
</table>
|
||
<p> </p>
|
||
|
||
<table bgcolor="#EEEEEE" class="doc" width="100%"><tr><td>
|
||
<a href="#top"><img src="../../src/up.gif" width="14" height="10" border="0" alt="nach oben"></a><a href="#bottom"><img src="../../src/down.gif" width="14" height="10" border="0" alt="nach unten"></a> 
|
||
</td></tr></table>
|
||
|
||
<h2 class="Sh2"><a class="an" name="download">Download</a></h2>
|
||
|
||
<table width="100%" cellpadding=10 height="66">
|
||
<tr>
|
||
<td class="xmpcode" bgcolor="#E4EEFF" valign="top"> Der Download beeinhaltet
|
||
folgende Dateien:
|
||
<ul>
|
||
<li>count_file_beispiel.php</li>
|
||
<li>count_file_erklaerung.txt</li>
|
||
<li>README.TXT</li>
|
||
</ul>
|
||
<a href="count_file_beispiel.zip">Download starten</a></td>
|
||
</tr></table>
|
||
<p> </p>
|
||
|
||
<table cellpadding="4" cellspacing="0" border="0" width="100%">
|
||
<tr><td colspan=2 bgcolor="#EEEEEE" class="doc">
|
||
<a href="#top"><img src="../../src/up.gif" width="14" height="10" border="0" alt="nach oben"></a>
|
||
</td></tr>
|
||
<tr>
|
||
<td bgcolor="#EEEEEE" class="doc" align="right" width="110">weiter:<img src="../../src/next.gif" width="10" height="10" border="0" hspace="10" alt="weiter"></td>
|
||
<td bgcolor="#FFFFFF"><img src="../../src/dok.gif" width="15" height="10" border="0" alt="Seite">
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td bgcolor="#EEEEEE" class="doc" align="right" width="110">zurück:<a href="index.php"><img src="../../src/prev.gif" width="10" height="10" border="0" hspace="10" alt="zurück"></a></td>
|
||
<td bgcolor="#FFFFFF" width="100%"><img src="../../src/dok.gif" width="15" height="10" border="0" alt="Seite">
|
||
<a href="index.html"><b>Verzeichnisse</b></a> </td>
|
||
</tr>
|
||
<tr><td colspan=2 bgcolor="#EEEEEE" class="doc"> </td></tr>
|
||
</table><table cellpadding="4" cellspacing="0" border="0" width="100%">
|
||
<tr>
|
||
<td bgcolor="#FFEEDD" class="nav"><a class="an" name="bottom"><img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von"></a>
|
||
<a href="../../index.html"><b>SELFPHP</b></a>/<a href="../../navigation/index.html">Navigationshilfen</a>
|
||
<img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von">
|
||
<a href="../index.html"><b>Tipps & Tricks</b></a> <img src="../../src/refkap.gif" width="16" height="13" border="0" alt="Teil von">
|
||
<a href="index.html"><b>Verzeichnisse</b></a></td>
|
||
</tr>
|
||
</table>
|
||
|
||
<p><a class="an" name="bottom">© 2001, 2002, 2003</a> <img src="../../src/mail.gif" width="15" height="10" border="0" alt="E-Mail"> <a href="mailto:mail@selfphp.info">Damir
|
||
Enseleit, mail@selfphp.info</a></p>
|
||
|
||
|
||
</body>
|
||
</html> |