Q.自分自身を取得したい

A. 参考元 マジック定数

フルパスのファイル名

__FILE__

ファイル名のみ

basename(__FILE__)

ディレクトリ

__DIR__ または dirname(__FILE__)

 

Q.日付日時が”2021-09-28T06:28:24+02:00″のように、日本仕様にならない。

A.

date_default_timezone_set(‘Asia/Tokyo’);

date(‘c’)

に記述する必要があります。

正常になれば”2021-09-28T13:38:11+09:00″のように「+09:00」が付加され正確な時刻になります。

 

Q.エラーメッセージ「Warning: mb_send_mail(): Multiple or malformed newlines found in additional_header in」とは?

A. mb_send_mail関数で PHPのバージョンが「7.4.13」の時

・サンプル文

mb_send_mail($mail, ‘テスト送信’, $msg, ‘ From: 任意のメールアドレス’);

で発生。エラーの表示だけでなくメールの送信も失敗しています。

・改善案

$w_header = ‘From: 任意のメールアドレス’;
mb_send_mail($mail, ‘テスト送信’, $msg, $w_header);

のように、第4パラメータを一度変数に渡すとエラーは消え、メールも送信されました。考えられる原因はPHPのバージョンによるものかもしれませんが詳細は不明です。

 

 

Q.エラーメッセージ「Parse error」とは?

A.例 $key’ ではゼロ件でした’ のように変数と文字列との間に結合文字を忘れた場合に発生。結合文字「.」を使って修正します。

$key.’ ではゼロ件でした’

 

Q. 相対パス

A.

./または指定なし 同じディレクトリを参照

指定しない例

abc/def.php

abcフォルダ内のdef.phpを参照

 

../ 上のディレクトリ内を参照

 

 

Q. 算術演算子

A.

公式の「代数演算子」を

https://www.php.net/manual/ja/language.operators.arithmetic.php

なお和差積商は + , – , * , / を使う。

たとえば、変数 i が 3の倍数の時だけ処理Aをしたい

if ($i % 3 == 0){

  処理A

}

関連事項

割り算の答えを整数で返す

intdiv

小数を丸める(≒四捨五入)

round

 

 

Q.外部ファイルの読み込みにはrequire関数か?include文か?

A.require関数については

https://www.sejuku.net/blog/31255

より「読み込みに失敗する」と

・require文は致命的なエラーになる。

・include文は警告が出るだけ。

※ブラウザに表示する場合は ini_set関数(公式)を使う

例 ini_set(‘display_errors’, ‘1’);

 

Q.単純にファイルを開いて閉じる

A.file_put_contentsの公式の例1がシンプルでわかりやすい

<?php
$file = ‘people.txt’;
// ファイルをオープンして既存のコンテンツを取得します
$current = file_get_contents($file);
// 新しい人物をファイルに追加します
$current .= “John Smith\n”;
// 結果をファイルに書き出します
file_put_contents($file, $current);
?>

★注意点

当然ながら people.txt が存在しないとエラーになる。そこで file_exists でエラーを回避する。

$file = ‘people.txt’;

if (file_exists($file)){

$current = file_get_contents($file);

以下、同文

}

 

Q.配列の並べ替えは?

A.個人的にはarray_multisortが便利。

公式サイト

 

 

Q.文字列の数字の足し算、引き算は?

A.一度intvalで整数に変換します。

使用例

$nin_kei = intval($value[2])+1;

 

 

Q.型キャストは?

A.公式

変換しようとする型を括弧で括り、キャストする変数の前に置きます。

●一部抜粋

(int) – 整数へのキャスト

$foo = (int) $bar;

(boolean) – 論理値へのキャスト

$bar = (boolean) $foo;   // $bar はbooleanです

(string) – 文字列へのキャスト

$fst = (string) $foo; // $fst も文字列です

 

Q.boolean型変数の中身を表示したら?

A. 実行サンプル

echo ‘_’; //正しく動作したら _ と表示される
$cluster_sw = (boolean) FALSE;
printf($cluster_sw);

結果:

_


echo ‘_’; //正しく動作したら _ と表示される
$cluster_sw = (boolean) TRUE;
printf($cluster_sw);

結果:

_1

 

 

その他

 

・PHP以外の言語同様に continue もあります。

 

・ループfor の記述例

配列 $cd_ar の数を把握し、0から配列数未満まで増加1でループ

for($i = 0, $size = count($cd_ar); $i < $size; ++$i) {

*ループ記事を更新できなかったのでこの記事に記載しました

 

 

PHPメニューへ戻る

 



ȥåץڡ