WP_Filesystem_Base::getnumchmodfromh() – Converts *nix-style file permissions to a octal number.

You appear to be a bot. Output may be restricted

Description

Converts *nix-style file permissions to a octal number.

Converts '-rw-r–r–' to 0644 From "info at rvgate dot nl"'s comment on the PHP documentation for chmod()

Usage

$string = WP_Filesystem_Base::getnumchmodfromh( $mode );

Parameters

$mode
( string ) required – string The *nix-style file permissions.

Returns

string Octal representation of permissions.

Source

File name: wordpress/wp-admin/includes/class-wp-filesystem-base.php
Lines:

1 to 29 of 29
  public function getnumchmodfromh( $mode ) {
    $realmode = '';
    $legal    = array( '', 'w', 'r', 'x', '-' );
    $attarray = preg_split( '//', $mode );

    for ( $i = 0, $c = count( $attarray ); $i < $c; $i++ ) {
      $key = array_search( $attarray[ $i ], $legal, true );

      if ( $key ) {
        $realmode .= $legal[ $key ];
      }
    }

    $mode  = str_pad( $realmode, 10, '-', STR_PAD_LEFT );
    $trans = array(
      '-' => '0',
      'r' => '4',
      'w' => '2',
      'x' => '1',
    );
    $mode  = strtr( $mode, $trans );

    $newmode  = $mode[0];
    $newmode .= $mode[1] + $mode[2] + $mode[3];
    $newmode .= $mode[4] + $mode[5] + $mode[6];
    $newmode .= $mode[7] + $mode[8] + $mode[9];

    return $newmode;
  }
 

 View on GitHub View on Trac