Pagination single article

 Paginate (page) function with specific html tag renclosing. return an array

 

Funzione paginazione (pagina) con chiusura di specifici tag html. restituisce un array

 

<?php

class PaginatePage{

        function  Paginate($page,$st,$cut){
    
            
         $page=str_replace('<br />','<p></p>', $page);
         $page=str_replace('<br>','<p></p>', $page);
        
        $contWords=strlen($page);
        $count=0;
    
        if ($contWords>$cut){
        
        while ($contWords>0){
            $count++;
 
            

                $stringA=substr($page, 0, $cut);

                  $pos=strripos($stringA, "$st");
                  
                  if (intval($pos)==0)
                  {
                  $stringA=substr($page, $cut);
                  $pos=strpos($stringA, "$st");
                  $string9=substr($page, 0, $pos+$cut);
                  $return[1]['d']=$pos;
                  $return[1]['pos']=$pos+$cut;
                  }else{
                  $string9=substr($stringA, 0, $pos);
                  $return[1]['pos']=$pos;
                  }
                  $return[1]['string']=$string9;
                  
              
            
                $string[$count]=$return[1];
                
                
        
                
                $contWords = $string[$count]['pos'];
                $page=substr($page, $contWords);
                 $string[$count]['srtrl']=strlen($page);
                 
             if ($string[$count]['string']=="" || strlen($page) < $cut){
                 $count++;
                 $string[$count]['string']=$page;
                 $string[$count]['srtrl']=strlen($page);
                  $contWords=0;
                          }
        
        }
        }else{
        $count++;
        $string[$count]['string']=$page;
        $string[$count]['srtrl']=strlen($page);
        }
        $string['TotalCount']=$count;
        
        $tags[]="h4";
        $tags[]="p";
        $tags[]="ul";
        $tags[]="ol";
        $tags[]="li";
        $tags[]="b";
        $tags[]="i";
        $tags[]="strong";

        foreach($string as $key=>$val){
            
        
            
         foreach($tags as $keys=>$tag){
            $open = substr_count($val['string'], "<$tag");
            $close = substr_count($val['string'], "</$tag");
             
            if($key > 0 && $open != $close){        
                    
                if ($open > $close){
                while($open != $close){
                $string[$key]['string'] =    $string[$key]['string']."</$tag>";
                $string[$key+1]['string'] =    "<$tag>".$string[$key+1]['string'];
                $open--;
                }
                }else{
                while($open != $close){
                
                $string[$key]['string'] =    "<$tag>".$string[$key]['string'];
                $open++;
                }
                }

            }
          }
        }
        
        
        return $string;  
       }
        
       
       
       
       
       
       
    }
    
    
    ?>

 
Warning: fopen(/var/www/cybernetica.it/components/com_sef/cache/shCacheContent.php) [function.fopen]: failed to open stream: Permission denied in /var/www/cybernetica.it/components/com_sef/shCache.php on line 112