| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | /dev/sda1 on / type ext3 (rw) proc on /proc type proc (rw) sysfs on /sys type sysfs (rw) devpts on /dev/pts type devpts (rw,gid=5,mode=620) tmpfs on /dev/shm type tmpfs (rw) usbfs on /proc/bus/usb type usbfs (rw) tmpfs on /lib/modules/2.6.12-9-amd64-generic/volatile type tmpfs (rw,mode=0755) /home on /chroot/home type none (rw,bind) /tmp on /chroot/tmp type none (rw,bind) /dev on /chroot/dev type none (rw,bind) /proc on /chroot/proc type proc (rw) /media/cdrom0 on /chroot/media/cdrom0 type none (rw,bind) /media/cdrom1 on /chroot/media/cdrom1 type none (rw,bind) /media/cdrom2 on /chroot/media/cdrom2 type none (rw,bind) /media/cdrom3 on /chroot/media/cdrom3 type none (rw,bind) /usr/share/fonts on /chroot/usr/share/fonts type none (rw,bind) tmpfs on /dev type tmpfs (rw,size=10M,mode=0755) |
kan volgens mij alleen met los proggie...quote:Op donderdag 24 november 2005 12:28 schreef Chandler het volgende:
een kleine; weet iemand hoe je alle diskdrives kan detecteren? zowel de schrijfbare als de niet schrijfbare? in php dus wel te verstaan
Helaas voldoet mount niet aan de omschrijvingen. Mount kan niet álle diskdrives laten zien die zowel schrijfbaar als niet-schrijfbaar zijn, namelijk degene die niet gemount zijn laat ie achterwegequote:Op donderdag 24 november 2005 14:27 schreef cyberstalker het volgende:
mount is geen external progje. mount is een standaard-onderdeel van POSIX-compliant systemen.
Windows is niet POSIX-compliant, en je zult het daarop dus niet kunnen gebruiken.
http://fia181-83.dsl.hccnet.nl/fok/HardDiskDrive.rarquote:Op donderdag 24 november 2005 14:21 schreef Chandler het volgende:
ok, dacht dat dit wel vrij simpel kon met php ofzo... misschien een bestandje proberen te maken en error vangen ofzo?open en schrijven anders read only
maar goed ik zal ff zoeken..
-- gezocht; werkt zover ik kan zien ook met mount (external progie) maar't zou toch ook zonder extra progie moeten willen?
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | function getDriveStats($drive) { if (strlen($drive) == 1) { $drive = $drive . ":"; } $exists = @stat($drive); if ($exists != false) { $free = disk_free_space($drive); $total = disk_total_space($drive); $driveinfo['space'] = $total; $driveinfo['used'] = $total; $driveinfo['free'] = 0; if ($total != 0) { $driveinfo['free'] = $free; $driveinfo['used'] = $total - $free; } return $driveinfo; } return false; } for ($x = 0; $x < 26; $x++) { $info = getDriveStats(chr(65+$x)); echo 'drive ' . CHR(65+$x); if ($info == false) { echo ' does not exists <br />'; } else { echo ' exists and is ' . $info['space'] . ' bytes big and has ' . $info['free'] . ' bytes free<br />'; } } ?> |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | php $string = 'cup'; $name = 'coffee'; $str = 'This is a $string with my $name in it.'; echo $str. "\n"; eval("\$str = \"$str\";"); echo $str. "\n"; /* output: This is a $string with my $name in it. This is a cup with my coffee in it. */ ?> |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | $MySQL_Download_Assoc['Filesize'] = "3634512123"; // 3,384903187863528728485107421875 GB if($MySQL_Download_Assoc['Filesize'] <= 1024) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / 1024, 1, ",", ".") . " KB"; } elseif($MySQL_Download_Assoc['Filesize'] >= 1025 OR $MySQL_Download_Assoc['Filesize'] <= 1048576) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; } elseif($MySQL_Download_Assoc['Filesize'] >= 1048577 OR $MySQL_Download_Assoc['Filesize'] <= 1073741824) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024 * 1024), 1, ",", ".") . " GB"; } else { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; } echo $Filesize; ?> |
Dit werkt (in mijn geval) nog beter.quote:Op donderdag 24 november 2005 19:03 schreef JeRa het volgende:
@the_disheaver
Je kunt voor jouw toepassingen veel beter alsnog gebruik maken van preg_replace, en kijken naar hoe (simpele) template parsers dit doen. Een standaard vervanging van een enkele variabele met preg_replace is vrij simpel, met arrays wordt het ietsjes complexer maar dat valt ook op dezelfde manier op te vangen
| 1 2 3 4 5 6 7 8 9 10 11 | $vars = array (); $vars [ "title" ] = "Titeltje"; $vars [ "content" ] = "Inhoud"; foreach ( $vars as $key => $value ) $template = str_replace ( '{' . $key . '}', $value, $template ) echo $template; |
| 1 2 3 4 5 6 7 8 | <head> <title>{title}</title> </head> <body> <p>{content}</p> </body> </html> |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 | if ($size <= 1024 ) { $s = number_format($size, 0, ',', '.') . ' bytes'; } else if ($size <= 1024 * 1024) { $s = number_format($size / 1024, 1, ',', '.') . ' kB'; } else if ($size <= 1024 * 1024 * 1024) { $s = number_format($size / (1024 * 1024), 1, ',', '.') . ' MB'; } else if ($size <= 1024 * 1024 * 1024 * 1024) { $s = number_format($size / (1024 * 1024 * 1024), 1, ',', '.') . ' GB'; } else { $s = number_format($size / (1024 * 1024 * 1024 * 1024), 1, ',', '.') . ' TB'; } return $s; } |
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | 10 bytes = 10 bytes 100 bytes = 100 bytes 1000 bytes = 1.000 bytes 10000 bytes = 9,8 kB 100000 bytes = 97,7 kB 1000000 bytes = 976,6 kB 10000000 bytes = 9,5 MB 100000000 bytes = 95,4 MB 1000000000 bytes = 953,7 MB 10000000000 bytes = 9,3 GB 100000000000 bytes = 93,1 GB 1000000000000 bytes = 931,3 GB 10000000000000 bytes = 9,1 TB 3634512123 bytes = 3,4 GB |
Thnx, eigenlijk werkt alles in mijn site met functies (1 function library php file met meer dan 2000 regels code)quote:Op donderdag 24 november 2005 21:18 schreef SuperRembo het volgende:
Zoals al gezegd, als je al weet dat een getal niet <= 1024 is, dan hoef je daarna niet te controleren of het >= 1025 is
Wat er nou precies fout gaat zie ik niet zo 1, 2, 3. Je code is niet zo overzichtelijk door die overbodige controle en doordat overal $MySQL_Download_Assoc['Filesize'] staat. Dit is typisch iets wat je makkelijker in een functie zet.
[ code verwijderd ]
Resultaten:
[ code verwijderd ]
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $MySQL_Download_Assoc['Filesize'] = "3634512123"; // 3,384903187863528728485107421875 GB if($MySQL_Download_Assoc['Filesize'] >= 1073741824) $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024 * 1024), 1, ",", ".") . " GB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1025 OR $MySQL_Download_Assoc['Filesize'] >= 1048576){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1048577 OR $MySQL_Download_Assoc['Filesize'] >= 1024){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / 1024, 1, ",", ".") . " KB"; }else{ $Filesize = number_format($MySQL_Download_Assoc['Filesize'], 1, ",", ".") . " Bytes"; } echo $Filesize; ?> |
| 1 |
| 1 |
Die b moet een hoofdletter B zijn in dat scriptjequote:Op donderdag 24 november 2005 21:18 schreef Chandler het volgende:
http://www.phpfreakz.nl/library.php?sid=17556
het kan nog beter trouwens, zie de comments in dit scriptje
De waarde in de elseif functie was verkeerd ipv de waarde van de variablequote:Op donderdag 24 november 2005 21:26 schreef ikke_ook het volgende:
wat the_disheaver zegt idd, die fout heb ik er in bovenstaand script uitgehaald.
de groter dan functie eruit gehaald, en een '{' toegevoegd.quote:Op donderdag 24 november 2005 21:24 schreef ikke_ook het volgende:
zo dan :
[ code verwijderd ]
-edit-
Ik geloof dat ik een beetje laat ben met mn reactie
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 | $MySQL_Download_Assoc['Filesize'] = "3634512123"; // 3,384903187863528728485107421875 GB if($MySQL_Download_Assoc['Filesize'] >= 1073741824){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024 * 1024), 1, ",", ".") . " GB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1048576) { $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / (1024 * 1024), 1, ",", ".") . " MB"; }elseif($MySQL_Download_Assoc['Filesize'] >= 1024){ $Filesize = number_format($MySQL_Download_Assoc['Filesize'] / 1024, 1, ",", ".") . " KB"; }else{ $Filesize = number_format($MySQL_Download_Assoc['Filesize'], 1, ",", ".") . " Bytes"; } echo $Filesize; ?> |
Nee, ik denk dat je dan met Regular Expressions aan de slag moet.quote:Op donderdag 24 november 2005 18:31 schreef the_disheaver het volgende:
Het is me nu gelukt met de eval() functie. Maar niet optimaal.
(ik wil dat de variable in een variable gewijzigd wordt door de waarde van de variable)
ff ter verduidelijkin:
[ code verwijderd ]
Maar het werkt niet als ik een variable als '$conf['form'] gebruik.
Kan ie ook zo'n soort variable eval'en?
| Forum Opties | |
|---|---|
| Forumhop: | |
| Hop naar: | |