FTP_RENAME 는 FTP 서버에서 파일 또는 디렉토리를 바꾸는 PHP의 내장 기능입니다. 기본 구문은 다음과 같습니다.
<span><span><span class="hljs-keyword">bool</span></span><span> </span><span><span class="hljs-title function_ invoke__">ftp_rename</span></span><span> ( resource </span><span><span class="hljs-variable">$ftp_stream</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$from</span></span><span> , </span><span><span class="hljs-keyword">string</span></span><span> </span><span><span class="hljs-variable">$to</span></span><span> )
</span></span>$ FTP_STREAM : FTP 연결의 리소스 핸들은 FTP_CONNECT 또는 FTP_SSL_CONNECT 와 같은 함수를 통해 설정된 FTP 연결 여야합니다.
$ $ : 원본 파일 또는 디렉토리로 이름을 바꿀 경로.
$ to : 새 파일 또는 디렉토리의 경로, 즉 이름이 변경된 이름입니다.
이 기능은 이름 변경 작업이 성공하면 TRUE를 반환하고 작업이 실패하면 FALSE를 반환합니다.
먼저 FTP_Connect 함수를 통해 FTP 서버에 대한 연결을 설정해야합니다. FTP 서버에 인증이 필요한 경우 FTP_LOGIN 기능을 사용하여 로그인해야합니다.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$ftp_server</span></span><span> = </span><span><span class="hljs-string">"ftp.example.com"</span></span><span>;
</span><span><span class="hljs-variable">$ftp_username</span></span><span> = </span><span><span class="hljs-string">"username"</span></span><span>;
</span><span><span class="hljs-variable">$ftp_password</span></span><span> = </span><span><span class="hljs-string">"password"</span></span><span>;
</span><span><span class="hljs-comment">// 설립하다FTP연결하다</span></span><span>
</span><span><span class="hljs-variable">$ftp_conn</span></span><span> = </span><span><span class="hljs-title function_ invoke__">ftp_connect</span></span><span>(</span><span><span class="hljs-variable">$ftp_server</span></span><span>) </span><span><span class="hljs-keyword">or</span></span><span> </span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"无法연결하다到FTP섬기는 사람"</span></span><span>);
</span><span><span class="hljs-comment">// 로그인하십시오FTP섬기는 사람</span></span><span>
</span><span><span class="hljs-variable">$login</span></span><span> = </span><span><span class="hljs-title function_ invoke__">ftp_login</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$ftp_username</span></span><span>, </span><span><span class="hljs-variable">$ftp_password</span></span><span>);
</span><span><span class="hljs-keyword">if</span></span><span> (!</span><span><span class="hljs-variable">$login</span></span><span>) {
</span><span><span class="hljs-keyword">die</span></span><span>(</span><span><span class="hljs-string">"로그인이 실패했습니다。"</span></span><span>);
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ftp_rename 함수를 사용하여 FTP 서버의 디렉토리 이름을 바꿉니다. / new_directory 로 이름을 바꾸어야한다고 가정하면 다음 코드로 구현할 수 있습니다.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-variable">$old_dir</span></span><span> = </span><span><span class="hljs-string">"/old_directory"</span></span><span>;
</span><span><span class="hljs-variable">$new_dir</span></span><span> = </span><span><span class="hljs-string">"/new_directory"</span></span><span>;
</span><span><span class="hljs-comment">// 디렉토리의 이름을 바꿉니다</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">ftp_rename</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$old_dir</span></span><span>, </span><span><span class="hljs-variable">$new_dir</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"디렉토리는 성공적으로 이름을 바꿉니다!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"디렉토리 이름 변경이 실패했습니다!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>디렉토리 변경 작업을 완료 한 후 FTP 서버에 대한 연결을 닫고 리소스를 해제해야합니다.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-comment">// 폐쇄FTP연결하다</span></span><span>
</span><span><span class="hljs-title function_ invoke__">ftp_close</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>);
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>ftp_rename 함수를 사용할 때주의를 기울여야 할 몇 가지 사항이 있습니다.
FTP 계정에 이름 변경 작업을 수행 할 때 디렉토리 이름을 수정할 수있는 충분한 권한이 있는지 확인하십시오. FTP 계정에 해당 권한이없는 경우 FTP_Rename은 성공적으로 실행되지 않습니다.
ftp_rename 함수는 소스 디렉토리가 존재하는지 확인하지 않습니다. 지정된 소스 디렉토리가 존재하지 않거나 경로가 잘못된 경우 작업이 실패합니다. 이를 피하기 위해 FTP_CHDIR 또는 FTP_NLIST를 사용하여 소스 디렉토리가 존재하는지 확인할 수 있습니다.
<span><span><span class="hljs-meta"><?php</span></span><span>
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">ftp_chdir</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$old_dir</span></span><span>)) {
</span><span><span class="hljs-keyword">if</span></span><span> (</span><span><span class="hljs-title function_ invoke__">ftp_rename</span></span><span>(</span><span><span class="hljs-variable">$ftp_conn</span></span><span>, </span><span><span class="hljs-variable">$old_dir</span></span><span>, </span><span><span class="hljs-variable">$new_dir</span></span><span>)) {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"디렉토리는 성공적으로 이름을 바꿉니다!"</span></span><span>;
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"디렉토리 이름 변경이 실패했습니다!"</span></span><span>;
}
} </span><span><span class="hljs-keyword">else</span></span><span> {
</span><span><span class="hljs-keyword">echo</span></span><span> </span><span><span class="hljs-string">"소스 디렉토리가 존재하지 않습니다!"</span></span><span>;
}
</span><span><span class="hljs-meta">?></span></span><span>
</span></span>FTP_RENAME 에 지정된 경로는 FTP 루트 디렉토리의 경로와 관련이 있으므로 경로의 정확성을 보장해야합니다. 루트 디렉토리의 디렉토리 또는 파일 이름을 바꾸어야하는 경우 디렉토리 이름을 직접 사용할 수 있습니다. 하위 디렉토리 인 경우 완전한 상대 경로를 포함해야합니다.
관련 태그:
FTP