| Server IP : 47.82.179.145 / Your IP : 216.73.217.129 Web Server : nginx/1.26.3 System : Linux iZt4n9czhka2zvqfajdlr2Z 6.8.0-63-generic #66-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 13 20:25:30 UTC 2025 x86_64 User : www ( 1001) PHP Version : 8.3.30 Disable Function : passthru,exec,system,putenv,chroot,chgrp,chown,shell_exec,popen,proc_open,pcntl_exec,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,imap_open,apache_setenv MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : /www/wwwroot/scuipturepactory.com/wp-content/themes/plover/core/src/Toolkits/ |
Upload File : |
<?php
namespace Plover\Core\Toolkits;
/**
* @since 1.0.0
*/
class Path {
/**
* Extracts specific number of segments from a path as string.
*
* @param string $path The input path.
* @param int $number Positive for first segments, negative for last segments.
* @param bool $wrap Whether to wrap in leading and trailing slashes.
*
* @return string
*/
public static function get_segment( string $path, int $number, bool $wrap = false ): string {
$segments = explode( ( DIRECTORY_SEPARATOR ?: '/' ), trim( $path, ( DIRECTORY_SEPARATOR ?: '/' ) ) );
$extracted = $number > 0 ? array_slice( $segments, 0, $number ) : array_slice( $segments, $number );
$slash = $wrap ? '/' : ''; // DIRECTORY_SEPARATOR breaks in Windows.
return $slash . implode( '/', $extracted ) . $slash;
}
/**
* Convert normal asset file path to rtl asset path.
*
* @param $path
*
* @return string
*/
public static function rtl_asset_path( $path ) {
if ( ! is_string( $path ) ) {
return '';
}
$last_dot = strrpos( $path, '.' );
return substr( $path, 0, $last_dot ) . '-rtl' . substr( $path, $last_dot );
}
}