ITメモ
PHP
PHP マニュアル(PHP Official Web)
Basic Knowlege / 基礎知識
「CentOS」にPHPをインストール方法PHPファイルの作り方外部「クラスファイル」「関数ファイル」を読み込む方法変数の使い方定義済み変数の使い方関数の使い方配列の使い方クラスの使い方ヒアドキュメントの使い方PHPの演算子条件分岐
Access Info / アクセス インフォ
IPアドレスを確認する方法アクセスされたURLパスを確認する方法PCとスマートフォンの判定アクセスしたページから特定ページにリダイレクトさせる方法
ファイル・ディレクトリ
ファイルとディレクトリの操作方法(作成・確認・削除)ディレクトリ内のファイル・ディレクトリPath(URL)を配列に格納する方法
ファイルの読み込みと書き込み
「file_get_contents」関数を使ってファイルを読み込む方法「readfile」関数を使ってファイルを読み込む方法「file」関数を使ってファイルを読み込む方法「fread」関数を使ってファイルを読み込む方法「fgets」関数を使ってファイルを読み込む方法「fwrite」関数を使ってファイルに書き込みをする方法
チェック
「is_file」関数 - 指定パスがファイルかをチェックする方法「is_dir」関数 - 指定パスがディレクトリかをチェックする方法
画像ファイル
画像ファイルのIPTC情報を取得する方法 画像ファイルをZipファイル形式でダウンロードさせる画像をコピーする方法画像のキーワード情報を取得する方法画像ファイルから「EXIF」ヘッダを読み込む画像の大きさ・画像情報を取得する
情報
「PHP」の出力系関数 - プログラミングで必須のデータ内容をチェックする方法関数の返り値を複数で受け取る方法使用可能なメモリ使用量を変更する方法mb_send_mail - エンコード変換を行ってメールを送信する「Google」「Goolge Map]に渡した値が文字化けするときの解決方法PHPで日付比較をする方法
文字列
「文字列」の長さを取得する方法【 substr 】「文字列」から一部分を取り出す方法【 explode 】「文字列」を分割する方法【 preg_split 】正規表現で「文字列」を分割するランダムな数字を取得する方法
文字の検索
「strpos」関数で指定文字の最初の位置を確認する方法「preg_match」関数で指定した「正規表現」で検索する方法
文字の置換
「str_replace」関数で指定した文字列を置き換える方法「preg_replace」関数で指定した文字列を置き換える方法
文字の削除
「trim」関数 - 文字列の両端から指定文字を削除する方法「ltrim」関数 - 文字列の先頭から指定文字を削除する方法「rtrim」関数 - 文字列の末尾から指定文字を削除する方法文字列の中にある「文字」を削除する方法「改行」を削除する方法文字列の「空白(スペース)」を削除する方法
配列
配列に値を追加する方法配列の値を削除する方法配列の有無を確認する方法配列の中から重複した値を削除する配列の空の値を削除する配列の並び順を変えるis_array - 変数が配列かを確認するin_array - 配列の中に指定した値があるか確認するimplode - 値の間に文字加えて配列を文字列に変換するarray_merge - 配列と配列を結合する方法
ライブラリ
「PHP」で使えるライブラリの種類「GD」ライブラリの使い方
Server / サーバー
サーバーの最大実行可能時間を変更する





【PHP】文字列にある「改行」を削除する方法

【PHP】
文字列にある「改行」を削除する方法




「PHP」でプログラムコードを記述していると、
「改行」が含まれてしまっていることがあります。
なので、「PHP」には「改行」だけを削除する方法がいくつかあります。


「PHP」で、改行を削除するのに使える関数は、
・str_replace
・preg_replace

・trim
・rtrim
などがある。

使用方法が、各関数で異なってきます。
記述方法が異なるので、機能しない時は、
各関数の使用方法を確認する。






「str_replace」を使って「改行」を削除する方法


「PHP」で、「改行」を置き換えるには、
文字列を置き換えることができる「str_replace」関数を利用する。
「文字列」と「置き換える文字」と「置き換えたい文字」を指定するだけの簡単な設定。

「改行」を削除する「str_replace」関数の書式

$SampleText = str_replace("\r\n", '', $SampleText);
$SampleText = str_replace(array("\r\n", "\r", "\n"), '', $SampleText);
$SampleText = str_replace(array("\r", "\n"), '', $SampleText);


「str_replace」関数の書式

$結果を格納する文字列変数名 = str_replace("検索する文字列", '置き換える文字列', $検索対象の文字列変数名);
$AfterProcess_SampleText = str_replace("\r\n", '', $Default_SampleText);


改行を削除するサンプルコード

<?php
$Default_SampleText = <<<EOT
aaa
bbb
ccc
ddd
eee
EOT;


$AfterProcess_SampleText = str_replace("\r\n", '', $Default_SampleText);
$AfterProcess_SampleText = str_replace(array("\r\n", "\r", "\n"), '', $Default_SampleText);
$AfterProcess_SampleText = str_replace(array("\r", "\n"), '', $Default_SampleText);

echo $Default_SampleText."<br>";
echo $AfterProcess_SampleText."<br>";
?>



Back



「preg_replace」関数で「改行」を削除する方法


「PHP」の「preg_replace」関数で、 「改行」を削除できますが、引数の指定が特徴的。
第1引数は、「/(スラッシュ)」で囲む必要があるらしい。
第2引数は、削除するだけなので空白「''」にする。


「preg_replace」を使って「改行」を削除する書式

$SampleText = preg_replace('/\r\n/', '', $SampleText );
$SampleText = preg_replace('/\n|\r|\r\n/', '', $SampleText );
$SampleText = preg_replace(array('/\r\n/','/\r/','/\n/'), '', $SampleText );
$SampleText = preg_replace('/(?:\n|\r|\r\n)/', '', $SampleText );


「preg_replace」で、正規表現を使うことができるようですが、
正規表現を利用するとパフォーマンスが悪くなるらしい。

「preg_replace」で正規表現を使用する場合は、
正規表現の「非キャプチャグループ」を使用すると良いらしいです。
$SampleText = preg_replace('/(?:\n|\r|\r\n)/', '', $SampleText );


Back



「trim」関数を使って「改行」を削除する方法


「trim」関数は、文字列の「先頭」「末尾」にある文字を削除する関数。
対象文字の1つを指定して削除することも可能。
削除対象の文字を引数に指定しない場合は、
デフォルトで削除対象となっている文字をすべて削除する。


「trim」関数で「改行」を削除するサンプルコード

$SampleText = trim($変数名,"削除したい文字");
$SampleText = trim($SampleText, "\r\n");
$SampleText = trim($SampleText, "\r");
$SampleText = trim($SampleText, "\n");



$SampleText = trim($変数名);


デフォルトの「削除対象文字」

・半角の空白(全角は対象外)
・\t(水平タブ)
・\n(ラインフィード)
・\r(改行)
・null文字
・\x0B(垂直タブ)


デフォルトの「削除対象文字」を個別に削除したい場合は、
個別に記述することで、個別の削除が可能。

$SampleText = trim(文字列,"")
$SampleText = trim(文字列,"\t")
$SampleText = trim(文字列,"\n")
$SampleText = trim(文字列,"\r")
$SampleText = trim(文字列,"\r\n")
$SampleText = trim(文字列,"null")
$SampleText = trim(文字列,"\x0B")


Back



「rtrim」関数を使って「改行」を削除する方法


「rtrim」関数は、
指定した文字列の末尾にある文字を削除するための関数。
「改行」文字を指定することで、 末尾にある「改行」文字を削除することができる。

1行ごとに処理をしている時に、「改行」を削除するのに使える。


「rtrim」関数で「改行を削除するサンプルコード

$SampleText = rtrim($変数名,"削除したい文字");
$SampleText = rtrim($変数名,"\r\n");
$SampleText = rtrim($変数名,"\r");
$SampleText = rtrim($変数名,"\n");


引数で「削除する文字」を指定しない場合は、
デフォルトの「削除対象」となっている文字が、 文字列の末尾から削除される。

$SampleText = rtrim($変数名);


デフォルトの「削除対象文字」

・半角の空白(全角は対象外)
・\t(水平タブ)
・\n(ラインフィード)
・\r(改行)
・null文字
・\x0B(垂直タブ)



デフォルトの「削除対象文字」を個別に削除したい場合は、
個別に文字を指定することで、それぞれの文字だけを削除できる。

$SampleText = rtrim(文字列,"")
$SampleText = rtrim(文字列,"\t")
$SampleText = rtrim(文字列,"\n")
$SampleText = rtrim(文字列,"\r")
$SampleText = rtrim(文字列,"\r\n")
$SampleText = rtrim(文字列,"null")
$SampleText = rtrim(文字列,"\x0B")



Back