2023-06-07
<日付表記パターン>
phpStart
function viewDate($date,$style = ""){
$WEEK = array("日","月","火","水","木","金","土");
if(isset($date)){
$date = substr($date,0,10);
$date = str_replace("/","-",$date);
if($date != "0000-00-00"){
list($y,$m,$d) = explode("-",$date);
$w = date("w", strtotime($dat...
2023-06-03
PHPでのSQLインジェクション対策ならプリペアドステートメントが有名です。
(プリペアド・ステートメントは静的プレースホルダ、バインド機構と呼ぶ場合もあるようです)
PDO派ではなく、mysqli派の方へ向けたプリペアドステートメントの記述方法の紹介です。
コードを見ればなんとなく分かると思います。
prepare関数にて「?」を仕掛けた数だけ、bind_param関数の引数の数に関係します。
<削除 DELETE>
phpStart
$id = htmlspecialchars($_POST["id"]);
$stmt = $mysqli->prepare("D...
2022-01-16
pubDateは独特でやっかいな表記型で扱いにくい。
<rss2.0 pubDateの書式>
Sun, 16 Jan 2022 01:54:00 +0000
pubDateを通常の日時表記にする方法はネットに多く転がっているけど、逆はありませんでしたので、
特定の日付(日付指定)で通常の日時型(2022/01/16 00:00:00)をpubDateの書式に変換する関数を作成しました。
たかが日時表記の変換なので難易度が低いですが、pubDateは地味に面倒な書式です。
RSSを自力で作成する人はほとんどいないと思うので、マニアックな事象なのですが。
当ブログはブ...
2021-06-14
毎回「このワークスペース内のファイルの作成者を信頼しますか?」というポップアップが出るようになった。どうやら複数人で開発する向け?のおせっかいな制限モードの機能。
有能なエンジニアは個人プレー!こんなしょうもないセキュリティー厨向けの機能は一掃しましょうということで、さっそく!
まずは左下のリストバンドみたいなアイコンを押して、「設定」へ
検索窓に「work」と打ってポチっとな。はい完了!
ワークスペース関連は全部「false」で結構。
ワークスペースの信頼だって(笑)いいよいいよそこまで面倒見てもらわなくても。
個人での開発の場合は意味のない機...
2020-10-23
PHPのstrtotime関数は非常に便利で、カレンダーを使用した予約システムなどで活躍してくれます。
今回は、月毎に第一週目の水曜日、第二週目の水曜日は何日かを求める最短の方法をご紹介。
phpStart
$y = 2020; //任意
$m = 10; //任意
$jd = cal_to_jd(CAL_GREGORIAN, $m, 1, $y);
$month_name = jdmonthname($jd, 1);
$first_wed_day = date("j", strtotime("first Wednesday of {$month_name} {$y}")...
2019-09-28
パソコン使用歴15年で四六時中パソコンを使用しているヘビーユーザーです。
そんな私のパソコンは昔からずっと、
・ウイルス対策ソフトなし
・WindowsUpdateは無効に設定
こんな状態ですが、何一つ異常ありません。今日もパソコンの調子は快晴です。
ちなみに私はネットバンクも利用しているし、仕事上、海外サイト(ちょっと危険っぽいサイト)でデザインに必要なフリー素材を探すことも頻繁に行っています。
※この記事を最後まで読まずに真似しないでください。なぜ、私がウイルス対策ソフトなしで感染しないのかを根拠で説明します。
▽なぜウイルス対策をインストールする...
2019-07-07
▽現役のメーラー「PHPMailer」ライブラリ
▽PHPMailerでSMTP送信ができたコードの紹介
▽PHPMailerでSMTP送信の手順1「ダウンロード」
▽PHPMailerでSMTP送信の手順2「ライブラリ読み込み」
▽PHPMailerでSMTP送信の手順3「SMTPの設定」
▽PHPMailerでSMTP送信の手順4「SMTP送信の実行」
▽PHPMailerでSMTP送信の動作確認済みコード
<現役のメーラー「PHPMailer」ライブラリ>
以前、迷惑メールになりにくいということでPEARのSMTP送信の記事を書きましたが、
PEARはPHP7になっ...
2018-10-05
データベース周りは未だに「mysqli派」ですが、ようやくPDOを使ってみようと決断。
PHP5.1以降に標準で利用できるようになったようで、ライブラリの読み込みは必要がない。
基本となる、接続・取得・追加・更新・削除の一連を動作確認しました。
使い勝手は良さそうで、PEAR::DBはもう完全にオワコンであることがはっきりしました。
※xamppでは下記コードでちゃんと動作しました。
phpStart
//mysqlアカウント
$DB['host'] = 'localhost';
$DB['user'] = 'user';
$DB['pass'] = 'pass'...
2018-10-03
PHPのキャリアは10年くらいで、フレームワークは一切使用せず、独自PHPで作成をする派です。
誰よりもあらゆるポータルサイトを早く作る自信があり、開発コストもかなり下げられる我が誇りの技術。
かなりの大掛かりで複数人での開発ならフレームワークを覚える必要があるのだろうが、
基本一人で全てこなす案件しかしないので、覚える必要がない。個人的にはスピード第一。
データベース周りは「mysqli派」です。というのも大抵のレンタルサーバーはmysqlだから他のを使う機会がありませんでした。
そんな私が、重い腰をあげてPEARライブラリのPEAR::DBを試してみた。
DBの基本であ...
2015-10-28
トピックスの管理画面で日付を自由に設定できるようにして、
現在より未来の日付の場合は表示しないようにするだけなので、
呼び出しの際に、WHERE文にひとつ追加するだけで予約投稿が実現。
htmlStart
WHERE `updated` < NOW()
htmlEnd
非常に実装が簡単で、需要がある機能なので、管理画面ではなるべく予約投稿の機能を実装すべし!
...
2013-05-05
画像ファイルがあるかないかを判断して、必要に応じてノーイメージ(now printing)を表示する時などに使用するファイル存在確認の代表的関数file_exists()。
phpStart
$path = './log/item/12345.jpg';
if(file_exists($path)){
$img = $path;
}else{
$img = '/img/noimage.jpg';
}
phpEnd
しかし、自サーバーならfile_exists関数でファイルがあるかないかを判断できるが、他ドメイン&他サーバーでは使用できないので、その場合はget_hea...
2012-10-07
例えば「01」や「02」など、先頭にゼロがついている数値を「1」という数値に直す場合は、Number関数を使用します。
htmlStart
var str = "05";
var num = Number(str);
//結果
num == 5
htmlEnd
逆に決まった桁数で先頭にゼロをつけなければいけないケース(ゼロパディング)もよく出くわします。その場合は下記の方法がおそらく最短コード。
htmlStart
var num = 5;
var str = ('0' + num).slice(-2);
//結果
str == '05'
htmlEnd
s...
2012-08-16
プロフィールを登録させる際に年齢の項目を設ける場合は、年齢を入力させるのではなく、生年月日を入力してもらうのが基本です。年齢を入力させてしまうと、データ上その人はずーっと同じ年齢のままになってしまうからです。
生年月日から年齢を求めるの方法はいくつかあるみたいですが、一番短いのが以下の計算方式です。
<計算方式>
phpStart
$birth = 19811007;
$age = floor((date('Ymd') - $birth) / 10000);
phpEnd
計算方式は「(今日の日付 - 生年月日) ÷ 10000」で求められるみたいです。floor()...
この記事がお役に立てましたら是非シェアのご協力お願いします。