try2 - PHP Online

Form of PHP Sandbox

Enter Your PHP code here for testing/debugging in the Online PHP Sandbox. As in the usual PHP files, you can also add HTML, but do not forget to add the tag <?php in the places where the PHP script should be executed.



Your result can be seen below.

Result of php executing





Full code of try2.php

  1. <?php
  2.  
  3. $dir='achizitii_publice';
  4.  
  5.  
  6. //Returneaza continutul
  7. $link_content = dirToArray($dir,0,2);
  8. uksort($link_content,'cmp');
  9. $link_content=array2html($link_content);
  10.  
  11.  
  12. function cmp($a, $b){
  13.   $a = date('Y-m-d', strtotime(str_replace('.','-',substr(end(explode('/',$a)),0,10))));
  14.   $b = date('Y-m-d', strtotime(str_replace('.','-',substr(end(explode('/',$b)),0,10))));
  15.   if ($a == $b) return 0;
  16.   return ($a > $b) ? -1 : 1;
  17. }
  18.  
  19. function dirToArray($dir,$pass,$stop){
  20.     ++$pass;
  21.     $contents = array();
  22.     foreach (scandir($dir) as $node){
  23.         if ($node == '.' || $node == '..') continue;
  24.                 if ($stop<$pass) continue;
  25.         if (is_dir($dir . '/' . $node)){
  26.             $contents[$dir.'/'.$node] = dirToArray($dir . '/' . $node,$pass,$stop);
  27.         }else{
  28.             $contents[] = $dir.'/'.$node;
  29.         }
  30.     }
  31.     return $contents;
  32. }
  33.  
  34. function array2ul($array){
  35.     $out="<ul>";
  36.     foreach($array as $key => $elem){
  37.         if(!is_array($elem)){
  38.                   $info=pathinfo($elem);
  39.                   $name=basename($elem,'.'.$info['extension']); 
  40.           $out=$out."<li><a href='$elem' target='_blank'>$name</a></li>";     
  41.         }else{
  42.                   $key_name=end(explode('/',$key));
  43.                   
  44.                   if(count(current($array))>0){
  45.                     $out=$out."<li class='m' title='$key_name'>$key_name".array2ul($elem)."</li>"; 
  46.                   }else{
  47.                         $out=$out."<li class='link' title='$key'>$key_name".array2ul($elem)."</li>";
  48.                   }  
  49.                 }  
  50.     }
  51.     $out=$out."</ul>";
  52.     return $out;
  53. }
  54.  
  55. function array2html($array){
  56.             $out="<table>";
  57.                 $i = 0;
  58.     foreach($array as $key => $elem){
  59.         if(!is_array($elem)){
  60.           $title=substr(explode('/',$elem)[1],13);              
  61.                   $info=pathinfo($elem);
  62.                   $dend=basename($elem,'.'.$info['extension']);
  63.                   $href='http://www.metrologieploiesti.ro/'.$elem;
  64.                   if ($i==0){
  65.                   $out=$out."<thead><tr><td>$title<hr></td></tr></thead><tr><th>Documente si clarificari</th></tr><tr class='detalii'><td><a href='$href' target='_blank'>$dend</a></td></tr>";
  66.                   }else{
  67.                   $out=$out."<tr class='detalii'><td><a href='$href' target='_blank'>$dend</a></td></tr>";
  68.                   }
  69.                   $i++;
  70.         }else{
  71.                   $key_name=explode('/',$key);
  72.                   $key_name2=end($key_name);
  73.                   $datap=explode('-',$key_name2)[0];
  74.                   $denp=substr($key_name2,13);
  75.                   $out=$out."<tr class='link2' title='$denp'><td>$denp".array2html($elem)."</td><td>$datap</td></tr>";
  76.                 }  
  77.     }
  78.     $out=$out."</table>";
  79.     return $out;
  80. }
  81.  
  82.  
  83. ?>
File Description
  • try2
  • PHP Code
  • 23 May-2023
  • 2.41 Kb
You can Share it: