PHP

PHPでshift-jisでファイル出力

PHP

出力する文字列をshift-jisで統一すればOK mb_convert_encoding($tmp, 'SJIS-win', 'UTF-8'); ネタ元 https://kantaro-cgi.com/blog/php/save_csv_by_sjis.html

PHPのforearchで連想配列からキーと値を取得

PHP

foreach (配列変数 as キー変数 => 値変数){ 実行する処理1; 実行する処理2; } ネタ元 https://www.javadrive.jp/php/for/index9.html

PHPで正規表現で日付部分抽出

PHP

preg_match_all("/\d{4}.\d{2}.\d{2}/", $tmp_data, $array_result); echo $array_result[0][0]; ネタ元 https://qiita.com/tsuuuuu_san/items/b88b0662426f2b956c77

今日から1年先までの年月日出力(日付の加算)

php

$tmp_date = new DateTime(); for ($i = 1; $i <= 366; $i++) { // 土日抜き $week = $tmp_date->format("w"); if( $week != 0 and $week != 6 ){ echo $tmp_date->format('Y/m/d'); echo '<br>'; } $tmp_date->modify('+1 days'); } ネタ元 https://blog.codeca…

php.iniを直接編集できないレンタルサーバーで、php.iniの設定を.htaccessで変更する

php

まずinfo.phpを以下の内容でつくってサーバーにアップ。 info.phpにアクセスして、phpの設定状況を確認する。変更したいパラメータを確認し、.htaccessに以下のように記述ちなみにこの3つの項目は下記のような関係になるように設定しなければいけません。 me…

PHPのバージョン上げたらWarning: array_multisort(): Argument #1 is expected to be an array or a sort flag対策

PHP

array_multisort($sort_key, SORT_DESC, SORT_NUMERIC, $data);としたら $sort_keyと$dataが配列だと宣言してないとワーニング出る $data= array(); $sort_key = array();とかね ネタ元 https://kurosawa0626.wordpress.com/2014/04/04/array_multisort%E3%8…

PHPのバージョン上げたらWarning: count(): Parameter must be an array or an object that implements Countable対策

PHP

前のバージョンではcount(NULL)に対して0を返していたが、PHP7.2からwarningを出しているなので if (is_array($hoge)) { count($hoge); }と回避しないとアカン ネタ元 https://qiita.com/masaki-ogawa/items/1671d110b2286ececd09

phpのバージョン上げたらWarning: Use of undefined constantの対策

php

今までは define(CONSTANT, "Hello world."); echo CONSTANT; // "Hello world." を出力しますでもOKだったけど define("CONSTANT", "Hello world."); echo CONSTANT; // "Hello world." を出力しますとくくらないとダメになった。 ネタ元 http://php.net/ma…

PHPのワーニング・エラーレベル調整

PHP

1. php.iniで指定する場合。 ※ Webサーバ(Apache)の再起動が必要です。 ;全てのエラー・警告を出力する場合 error_reporting = E_ALL ;エラー(スクリプトの実行が中断される)のみ出力する場合 error_reporting = E_ERROR ;警告(スクリプトの実行が中断…

PHPのバージョン上げたら文字化けした場合

PHP

Shift JISの文字コードで書いてあるページなら php.iniに以下記述 default_charset = sjis ネタ元 https://qiita.com/phanect/items/550bc0a1c671a4b9a720 http://www.bnote.net/windows/windows/code.shtml

PHPでメール送信を行う

php

mb_language("Japanese"); mb_internal_encoding("UTF-8"); $to = "送る先@email.com"; $subject = "題名"; $body = "本文"; $header = "From:送り元@mail.com"; mb_send_mail($to, $subject, $body, $header); ネタ元 https://techacademy.jp/magazine/11629…

PHPでPOST送信する方法

php

こんな感じ $url_name, 'password' => $password ); $content = http_build_query($data); $options = array('http' => array( 'method' => 'POST', 'content' => $content )); $contents = file_get_contents($url, false, stream_context_create(…

PHPでIPアドレスを取得する

php

echo $_SERVER['REMOTE_ADDR']; ネタ元 http://uxmilk.jp/25515

phpで”REMOTE_HOST”が取得できない場合の解決法

php

gethostbyaddr()でIPから変換。 ネタ元 http://blog.dacelo.info/apache/entry-1077.html

PHPで文字列置換はstr_replace

PHP

// <body text='black'> となります $bodytag = str_replace("%body%", "black", "<body text='%body%'>"); ネタ元 http://php.net/manual/ja/function.str-replace.php</body></body>

PHP-数値を文字列として表示する

PHP

$a = 123456789; $str = strval($a); // ‘123456789’ ネタ元 http://univetech.com/%E6%95%B0%E5%80%A4%E3%82%92%E6%96%87%E5%AD%97%E5%88%97%E3%81%A8%E3%81%97%E3%81%A6%E8%A1%A8%E7%A4%BA%E3%81%99%E3%82%8B-25.html

PHPでデータをCSV出力する

php

phpでunixtimeから日時に変換

php

$date_unixtime_str = '946652400'; $date = new DateTime('@' . $date_unixtime_str); echo $date->format('Y-m-d H:i:s'); ネタ元 https://qiita.com/sounisi5011/items/d6df76798d2e23c83e14

PHPで配列の最初の要素を取るならcurrent()

PHP

$first = current($arr); ネタ元 http://bashalog.c-brains.jp/15/02/25-175724.php

PHPでJSON操作。ループで展開

PHP

JSONサンプル { "name": "あらゆ", "gender": "男" }decodeサンプル // JSONは[$json]に格納されていると仮定 // 配列型の場合 $array = json_decode( $json , true ) ; // ループ処理 foreach( $array as $key => $value ) { // [$key]には「name→gender」…

PHPからAPIなどでURLアクセスするときfile_get_contents()を使わずcurlを使う

php

file_get_contents() は ヘッダ情報の保持ルールやタイムアウト処理に癖があるため 返却されるステータスコードや、タイムアウト時に再リクエストなどを行うような 対APIの処理では、それらを知らないと想定していない事態に陥る。 curlの例 private functio…

PHP 高速化に関するメモ書き

php

https://thk.kanzae.net/net/itc/t2379/

phpでCSVファイル読み込みはfgetcsv

PHP

$num fields in line $row: <br /></p>\n"; $row++; for ($c=0; $c < $num; $c++) { echo $data[$c] . "<br />\n"; } } fclose($handle); } ?>ネタ元 http:/…

PHPで簡単にPOST送信

PHP

'htmlspe', 'show' => 'quickref', ); $options = array('http' => array( 'method' => 'POST', 'content' => http_build_query($data), )); $contents = file_get_contents($url, false, stream_context_create($options)); ?>ネタ元 http://www.…

PHPでメール送信

PHP

ネタ元 http://qiita.com/shuntaro_tamura/items/c0ef05cb4d4e22e78297

phpで数字と小数点部分だけ抽出

php

$last = preg_replace('/[^0-9.]/', '', $last); // 数字と小数点部分だけ抽出ネタ元 http://nkawamura.hatenablog.com/entry/2013/06/15/143729

phpで配列に含まれる項目数を取得する(count)

php

count()を使う <html> <head><title>PHP TEST</title></head> <body> '); print('再帰的に数えた場合、項目数は'.$cou…</body></html>

phpで文字エンコードを変換する(mb_convert_encoding)

php

$str = "元になっている文字列"; $str = mb_convert_encoding($str, "SJIS", "UTF-8");ネタ元 http://www.phpbook.jp/func/string/index5.html

プラスアルファサーバーのCRONでPHP実行

時間は日本時間でOKだよ cd /home/<ユーザー名>/public_html/<実行するPHPコードのパス>;/usr/bin/php hogehoge.phpネタ元 http://ryus.co.jp/blog/sakuracron/ https://www.plus-server.net/faq/topic.php?go=topic&num=47 https://www.plus-server.net/faq…

PHPでテキストファイルのX行目を読み込む

PHP

$hoge = file("text.xml"); print "$hoge[ X ]"ネタ元 http://pulltab.info/2007/07/phpx.html