PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

ftp_close> <ftp_chdir
Last updated: Fri, 05 Sep 2008

view this page in

ftp_chmod

(PHP 5)

ftp_chmodFTP 経由でファイルのパーミッションを設定する

説明

int ftp_chmod ( resource $ftp_stream , int $mode , string $filename )

指定したリモートファイルのパーミッションを mode に設定します。

パラメータ

ftp_stream

FTP 接続のリンク ID 。

mode

新しいパーミッション。8 進数 で指定します。

filename

リモートファイル。

返り値

成功した場合に新しいパーミッションを、エラー時に FALSE を返します。

例1 ftp_chmod() の例

<?php
$file 
'public_html/index.php';

// 接続を確立する
$conn_id ftp_connect($ftp_server);

// ユーザ名とパスワードでログインする
$login_result ftp_login($conn_id$ftp_user_name$ftp_user_pass);

// $file のパーミッションを 644 に変更する
if (ftp_chmod($conn_id0644$file) !== false) {
 echo 
"$file chmoded successfully to 644\n";
} else {
 echo 
"could not chmod $file\n";
}

// 接続を閉じる
ftp_close($conn_id);
?>

参考



ftp_close> <ftp_chdir
Last updated: Fri, 05 Sep 2008
 
add a note add a note User Contributed Notes
ftp_chmod
cspiegl at kwask dot de
21-Apr-2008 12:30
Ok,
so if 2 people say that my way is wrong and the other is right, i will take mine back.
I posted it cause for me just the way i used it worked (i don't know why)

AND: i would not say something like: "I would try before post", in my opinion that is realy unfriendly, cause i tryed!
tiefenbrunner at obdev dot at
17-Dec-2007 05:19
The "mode" parameter of the PHP5 ftp_chmod function is an integer value that is supposed to be given as an octal number, like the argument for the "chmod" command line tool.

Thus the sprintf must use the %o formatting character, so that the passed integer value is really represented as an octal number to the CHMOD site command for the FTP server.

So, IMHO, rabin's version is correct (it definitely worked for me).
Josh at jcr dot com
13-Sep-2007 10:13
rabin's code works just fine as a replacement for ftp_chmod().
I would try that before trying cspiegl's solution for pre-php 5 installations.
cspiegl at KwasK dot de
31-Aug-2007 01:36
Hi,
The commet with the "ftp_site" is not correct!
You must use it like this:

<?php
if (!function_exists('ftp_chmod')) {
    function
ftp_chmod($ftp_stream, $mode, $filename)
    {
        return
ftp_site($ftp_stream, sprintf('CHMOD %u %s', $mode, $filename));
    }
}
?>
rabin at rab dot in
23-May-2006 03:21
As mentioned in the note below, the function posted by "hardy add mapscene dot com" works incorrectly if used with an octal mode, the way the php5 function is used.

This function works exactly like the the php5 one:

<?php
if (!function_exists('ftp_chmod')) {
    function
ftp_chmod($ftp_stream, $mode, $filename)
    {
        return
ftp_site($ftp_stream, sprintf('CHMOD %o %s', $mode, $filename));
    }
}
?>

ftp_close> <ftp_chdir
Last updated: Fri, 05 Sep 2008
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites