file_get_contents()
ファイルの内容をすべて取得する。また、URLを指定してウェブサイトのソースを取得することもできる。
$str = file_get_contents('https://google.com');
echo $str;
画像のパス取得について
$path = 'test.jpg';
//file_get_contentsで画像のパスを指定
$img = file_get_contents($path);
//タイプをimage/jpegで指定
header('Content-type: image/jpeg') ;
echo $img;
応用ステータスコード
//コンテキストを設定
$con = stream_context_create(array(
'http' => array('ignore_errors' => true)));
//URLを指定してレスポンスを取得する
$http = file_get_contents('http://www.sejuku.net/aaa', false, $con);
//ステータスコードを取得する
$code = substr($http_response_header[0], 9, 3);
//ステータスコードによって処理を分岐する
switch ($code){
case '200':
echo $code;
break;
case '404':
echo '404 error';
//エラー処理
break;
case '500':
echo '500 error';
//エラー処理
break;
default:
break;
}
file_put_contents
ファイルに文字列を書き込む
file_put_contents($ファイル名, $データ内容[, $オプションフラグ][, $コンテキスト])
$data = "Hello World!\n";
file_put_contents("./sample.txt", $data);
sample.txtの中身を表示すると「Hello World!」の文字列が書き込まれている
basename()
ファイルやディレクトリのパスから最後にある名前の部分を返す。
$name = basename('/path/to/file.txt');
echo "$name\n";
file.txt
dirname
指定したパスの親ディレクトリを取得
echo dirname("/usr/local/lib") . PHP_EOL;
echo"<br>";
// ②親ディレクトリから2つ上の階層までのパスを返却
echo dirname("/usr/local/lib", 2);
結果
/usr/local
/usr
realpath()
ファイルの正規化された絶対パスを取得できる
ファイルが存在しない等、失敗したらFALSE返す
<?php echo realpath("style.css"); ?>
↓出力
/home/○○○○/www/style.css
<?php echo realpath("wp-content/themes/sampletheme/style.css"); ?>
↓出力
/home/○○○○/www/wp-content/themes/sampletheme/style.css
#owari