나는 WordPress에서 robots.txt 파일의 내용을 가져 오는 기능을 만들고 있습니다. 파일이 없으면 기본 내용으로 만듭니다. 내 옵션 페이지에 사용하겠습니다. 음,이 내 코드, 그것은 파일을 생성 거의 작동해야하지만, 그렇지 않습니다 :PHP - TXT 파일을 읽고 쓰는 기능
function get_robots($robots_file) {
$robots_file = get_home_path() . 'robots.txt'; //The robots file.
$dir = get_home_path(); //The root directory
if(is_file($robots_file)){
$handle = fopen($robots_file, "r");
$robots_content = fread($handle, filesize($robots_file));
fclose($handle);
} else {
$default_content = "User-agent: *\nDisallow:";
chmod($dir, 0777);
$handle = fopen($robots_file, "w+");
$robots_content = fwrite($handle, $default_content);
fclose($handle);
}
chmod($dir, 0744);
return $robots_content;
}
나는 문제가 is_file
경우 확실하지 않다, 또는 fopen($robots_file, "w+"
은 (는 "R"해야 하는가?) 이후 else
. 그리고 권한에 대해 잘 모르겠습니다. 777이 필요한가요? 744가 WordPress의 루트 디렉토리에 대한 기본값입니까?
그리고 나중에 return
을 사용하여 변수로 사용할 수 있습니다. fopen
이 이미 파일을 만들고 있다고 가정합니다. 내가 맞습니까?
미리 감사드립니다.
사용한다면, 함수 문서를 보면서 시작해야한다 : http://php.net/fopen 그들은 분명히 문서화되어있다. 아, 디렉토리에서 chmod 744를 사용하면 다른 모든 사용자가 chmod를 손상시킬 수 있습니다. dir에 대한 실행 권한을 제거하면 해당 내용을 나열하는 기능이 제거됩니다. 파일 이름이 무엇인지 알면 파일을 읽을 수있는 기능이 제거되지 않습니다. –