タグ

PHPに関するnemusgのブックマーク (53)

  • 指定した日時によって自動で表示を切り替えたり変化させるPHPネタ - Qiita

    PHPを使って自動でサイトを更新するためのまとめ。 キャンペーン告知や応募受付に。 ※さらにスマートな書き方をコメント欄にていただいたので追記しました。 指定日時まで表示し、過ぎたら非表示にする <?php if (strtotime(date('Y-m-d H:i')) < strtotime('2015-10-10 8:00')) { echo '2015-10-10 7:59まで表示する内容'; } ?>

    指定した日時によって自動で表示を切り替えたり変化させるPHPネタ - Qiita
    nemusg
    nemusg 2018/04/09
  • PHPユーザエージェント判別・判定

    Updated 2015.12.07 / Published 2015.04.04 Firefox OSやWindows Phoneの登場でユーザエージェント情報に依存して処理を行っている部分が相次いで見直しを迫られることになりますので、2015年版JavaScriptユーザエージェント判別・判定と同趣旨でPHPにてスマートフォン・タブレットまわりのユーザエージェントを判別・判定して分岐処理を行う手順をご紹介します。 <?php class UserAgent{ private $ua; private $device; public function set(){ $this->ua = mb_strtolower($_SERVER['HTTP_USER_AGENT']); if(strpos($this->ua,'iphone') !== false){ $this->device =

    PHPユーザエージェント判別・判定
    nemusg
    nemusg 2015/04/06
  • PHPで改行コードを統一する関数: CRLF, CR, LF が混在してる文字列を LF に変換するなど - Qiita

    PHPで改行コードを統一する関数: CRLF, CR, LF が混在してる文字列を LF に変換するなどPHP <?php function convertEOL($string, $to = "\n") { return preg_replace("/\r\n|\r|\n/", $to, $string); } $string = "CR + LF: \r\n CR: \r LF: \n"; echo "Testing string:", PHP_EOL; echo json_encode($string), PHP_EOL; echo "For MacOSX, Unix, Linux", PHP_EOL; echo json_encode(convertEOL($string)), PHP_EOL; echo "For Windows", PHP_EOL; echo json_enco

    PHPで改行コードを統一する関数: CRLF, CR, LF が混在してる文字列を LF に変換するなど - Qiita
    nemusg
    nemusg 2014/09/23
  • PHPで現在アクセスされているページのURLを取得する - hoge256ブログ

    PHPで現在表示しているページのURLを取得する方法のメモ。 これもよく使うのですが、よく忘れるのでメモしておきます。 現在のページ自体は次の方法で取れます。 print($_SERVER["REQUEST_URI"]); これだけだとホスト名が分かりませんので、先頭にhttp://を付け足しつつ次のようにします。 print("http://" . $_SERVER["HTTP_HOST"] . $_SERVER["REQUEST_URI"]); これで、一応現在ページのURLが取得できます。 HTTPのLocationヘッダー等は来絶対パスでないといけないので、上記の$_SERVER変数を組み合わせて生成するといい感じです。 カテゴリー: 技術メモ | コメントはまだありません » トラックバック URL ※言及リンクのないトラックバックは削除されます。 ※書き込まれてから公開

    nemusg
    nemusg 2014/09/07
  • 基本中の基本!PHPのプログラミングエラーの種類と内容 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作

    大体こんな事が原因でエラーが出ます。 E_ERROR / FATAL : 実行時の状態がそもそも問題 ①呼び出す関数名間違い ②外部モジュールがエラーの場合 ③スペルミス ④複雑な家庭環境 E_PARSE / Parse : 構文エラー ①セミコロン忘れ、閉じ忘れ ②全角スペース混入 ③視力低下または乱視 E_WARNING / Warning : 警告。問題は発生するが処理継続 ①実行処理の失敗 ②参照先が参照できなかった場合 ③型が違う ④精神不安定 E_NOTICE / Notice : 通知。問題になりうるが処理継続 ①未定義変数の利用 ②関数の引数がおかしい ③興奮状態 エラーが起きることでこんな被害が予想されます。 ①FatalとParseに至っては動作しないので、頭および実行結果が真っ白になってしまう。 ②いろいろな情報が出力されたりするので、脆弱性になりうる。 ③表示(レイ

    基本中の基本!PHPのプログラミングエラーの種類と内容 | 株式会社LIG(リグ)|DX支援・システム開発・Web制作
    nemusg
    nemusg 2014/08/14
  • pukiwikiのトップページが真っ白(php.iniのinclude_pathを設定変更) | Projeto: Vermelho

    一定期間更新がないため広告を表示しています

    pukiwikiのトップページが真っ白(php.iniのinclude_pathを設定変更) | Projeto: Vermelho
    nemusg
    nemusg 2014/08/13
  • 【PHP5.4】Call-time pass-by-reference has been removed回避対応

    PHP5.4を動かす際にPHP Fatal error:  Call-time pass-by-reference has been removedと出たのでメモ Call-time pass-by-reference(関数呼び出しの際に参照渡しを行う)機能がなくなった PHP5.4からCall-time pass-by-reference(関数呼び出しの際に参照渡しを行う)機能がなくなったみたいです。 対処方法 参照渡しを値渡しにすればいいのです。 <?php /** *テスト */ $a = 1; $b = 2; function test(&$a, $b) { return true; } //test(&$a,$b);//これを実行するとエラーになる test($a, $b); //エラー回避になる 【&】を抜けばいいだけです。 実際はダメなのかもしれませんが動くのでこの対応でいい

    【PHP5.4】Call-time pass-by-reference has been removed回避対応
    nemusg
    nemusg 2014/08/13
  • 「Fatal error: Call-time pass-by-reference has been removed」の対処 - dogmap.jp

    nemusg
    nemusg 2014/08/13
  • PHP 5.4.4から==の挙動が一段と難しくなりました - hnwの日記

    PHPの==は両辺を適当に型キャストしてから比較するような演算子です。この型キャストの規則は難解すぎる上にドキュメントも不十分なため、PHPプログラマでも完璧に理解している人はほとんど居ないくらいの印象です。バグの原因になりかねないため、なるべく==を使わないようにしているPHPプログラマも多いはずです。 ところで、この==演算子の挙動がPHP 5.4.4から変更されていることはあまり知られていません。稿ではこの内容を紹介します。 Bug #54547 の騒動 まずはこの仕様変更の経緯を紹介します。 2年ほど昔、Hacker Newsで2^63付近の整数に対応する文字列をPHPで比較したときの挙動がおかしいというスレッドが盛り上がったことがありました。具体的には、PHPでは「'9223372036854775807' == '9223372036854775808'」がtrueになるとい

    PHP 5.4.4から==の挙動が一段と難しくなりました - hnwの日記
    nemusg
    nemusg 2014/08/11
  • 次のプロジェクトで PHP 5.4 の採用を提案するための 3 つのポイント (PHP 5.4 Advent Calendar 2011 19 日目) - co3k.org

    PHP 5.4 Advent Calendar 2011 19 日目です。 前回は @cocoitiban さん でした。 htmlspecialchars() のオプション追加については個人的にも気になっていたところ(Symfony2 の https://github.com/symfony/symfony/commit/053b42158e2f887b54a3e87977303d219530082f というコミットで気づいた)で、ふむふむと読ませていただきました。たとえば、文書型を考慮するようになると SGML 的に (あれ、 HTML 的にだっけ?) 違法である NULL 文字とかがさっくり消えて、 IE が NULL 文字を無視したりして XSS に繋がりうる問題 が回避できるようになったりするんですかねえ。 さて、これまでの Advent Calendar で触れられてきたように

    nemusg
    nemusg 2014/07/17
  • PHP でファイルをインクルードするときは絶対パスを使おう | バシャログ。

    『ロマンシング サ・ガ』三部作のリマスター版サウンドトラック発売を受けてゲーム熱が再燃している kagata です。 さて今回は PHP のこまかい話です。インクルードするファイルを相対パスで指定していると、思わぬ挙動をみせたり、異なる環境での使いまわしに難が出ることがあります。どんな環境でも意図したとおりのファイルをインクルードできる記述を考えてみましょう。 相対パスでインクルードした場合の挙動(Webの場合) まず、相対パスでインクルードすると何が問題になるのか見てみましょう。 例えば、次のようなファイル構成の Web アプリケーションがあったとします。 /index.php /module.php /include/ /include/inc.php /include/module.php で、それぞれのファイルの中身を次のようにします。このとき、index.php にアクセスすると

    PHP でファイルをインクルードするときは絶対パスを使おう | バシャログ。
    nemusg
    nemusg 2014/07/14
  • PHP: session_regenerate_id - Manual

    Getting Started Introduction A simple tutorial Language Reference Basic syntax Types Variables Constants Expressions Operators Control Structures Functions Classes and Objects Namespaces Enumerations Errors Exceptions Fibers Generators Attributes References Explained Predefined Variables Predefined Exceptions Predefined Interfaces and Classes Predefined Attributes Context options and parameters Su

    nemusg
    nemusg 2014/07/07
  • php:phpのバージョン確認方法 | raining

    phpのバージョンを確認する。 確認方法としてはコマンドで実行する方法とスクリプトを実行し、ブラウザで確認する方法を記載。 ■ コマンドで実行する場合(Linux) 1.SSHでサーバに入り、下記のコマンドを実行する。 php -v 2.実行結果が下記の様に表示されるので。 PHP 5.3.3 (cli) (built: Nov 2 2011 23:35:50) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend Technologies ■ スクリプトを実行する場合 1.phpファイルを用意し、下記の内容を記載する。 <?php phpinfo(); ?> 2.作成したファイルをサーバにアップする。 3.アップしたファイルをブラウザでアクセスすると、phpのバージ

    nemusg
    nemusg 2014/06/30
  • 正規表現の文字クラスまとめ - 名もないテクノ手

    先日、Yuji@勉強部屋さんと電話で話していて、文字クラスの理解が正規表現の「一里塚」だなぁ、と感じました。InDesignで初めて正規表現に接する方も多く、戸惑われている人もいらっしゃると思います。 文字クラスは正規表現の中でもちょっと特別な存在です。文字クラス内だけで使えるメタ文字や、位置によって意味が変わるメタ文字もあります。文字クラスについては、日頃使い慣れた人でも間違えやすい部分もあり、結構奥が深いのでおさらいの意味も込めてまとめておきます。 文字クラスの基 ここで言う「文字クラス」は、「POSIXブラケット表現」とも呼ばれます。違うサイトや書籍などで、これらの用語が混在することがありますが、ほぼ同じと考えて差し支えありません*1。 文字クラスは任意の1文字にマッチする「文字集合」を表現できます。 簡単な例から見てみましょう。たとえば「お母さん」と「お父さん」のどちらにもマッチ

    正規表現の文字クラスまとめ - 名もないテクノ手
    nemusg
    nemusg 2014/06/24
  • PHPで改行コードを(LF)に統一する方法 | jaxx2104.info

    $str = preg_replace("/\r\n|\r/","\n",$str);

    nemusg
    nemusg 2014/06/24
  • php.iniがエラー出力をしない設定にしている状態で、開発環境でデバッグする

    こんばんわ、久々のブログ更新です。 最近更新するたびに久々って言ってる気がします。 まあ、それは置いといて・・・ 今回は、php.iniでエラー出力をしない設定にしている状態で デバッグする方法です。 今、僕があってる状態なんですが サーバとローカルのテスト用サーバでphp.iniの設定が違います。 さすがに、サーバのphp.iniをいじるわけにはいきませんので、 この方法でデバッグしました。 サーバでphp.iniのdisplay_errorsがOffになっています。 ですので、テスト用サーバからサーバにアップして動作確認しようとすると エラーが出力されません。 なので、どこがエラーなのかわからない…という状況になってしまいます。 そこで、便利な関数があるんです。 なんで今まで知らなかったんだろう… それが、ini_set()です。 スクリプト内でphp.iniの値を変更できる関

    php.iniがエラー出力をしない設定にしている状態で、開発環境でデバッグする
    nemusg
    nemusg 2014/04/17
  • 知らないと働けないPHPの基本文法/構文と注意点

    オープンソースのWeb開発向けスクリプト言語「PHP」の文法を一から学ぶための入門連載「Web業界で働くためのPHP入門」。前回の「初心者がPHPプログラミングを始めるための基礎知識とXAMPPのインストール」では、PHPの概要や特徴を紹介し、環境構築や「Hello World!」までの手順などを解説しました。 今回からは環境がセットアップできている前提で進めますので、まだの方は前回を参照して準備をしておきましょう。 PHPタグでPHPのコードを埋め込む PHPでは、テキストファイルにコードを書けば、それをそのまま実行できます。このような言語は、他にPythonRubyPerlJavaScriptなどがあります。ただ、PHPの場合はテキストファイルに一定の形式で書くことが必要です。 それは、コードは「<?php」と「?>」というPHPタグの間に書かなくてはならない、ということです。例

    知らないと働けないPHPの基本文法/構文と注意点
    nemusg
    nemusg 2014/03/14
  • PHPでURLを取得する(パラメータ) | 独学PHP・MySQL学習入門

    PHPでURLを取得する方法です。 「$_SERVER」を使います。 取得するデータにより下記のように使い分けることができます。 ドメイン名の取得($_SERVER[“SERVER_NAME”]) スクリプト名の取得($_SERVER[“SCRIPT_NAME”]) パラメータの取得($_SERVER[‘QUERY_STRING’]) 絶対パス($_SERVER[‘SCRIPT_FILENAME’]) ページにアクセスするために指定されたURI($_SERVER[‘REQUEST_URI’]) などがあります。 具体的にどのようなデータが取得できるのか見てみます。 http://example.com/index.php?test=1 というURLの場合 $_SERVER["SERVER_NAME"]; →example.com $_SERVER["SCRIPT_NAME"]; →/ind

    nemusg
    nemusg 2014/02/04
  • reddit風のGoodかBadの投票機能実装サンプル:phpspot開発日誌

    AbhiTech: HOW-TO: Reddit-style Voting With PHP, MySQL And jQuery reddit風のGoodかBadの投票機能実装サンプル。jQuery+PHP+MySQLにて実装されています。 シンプルで直感的な分かりやすい投票機能をページに実装したい方は参考にするとよさそうです。 星型の段階的な投票よりも、白黒ハッキリさせたい投票機能として使えそうですね。 データベースのデータ形式もシンプルなので取得したデータを活用するのも容易です。 関連エントリ jQueryとPHPでダイナミックな投票スクリプトを作成 投票用ウィジェットを簡単に作成できるサービス「Vizu」 PHPMySQLで投票機能を作成するチュートリアル&DL

    nemusg
    nemusg 2013/10/31
  • 2ch(2ちゃんねる)のIDのようなIDの作り方 -

    掲示板サイト2ちゃんねるに書き込むと ID:U+5EtO9y という形式のIDが表示されます。 PHPでこれと似たIDを作るには、以下のようにします。 $str = "210.221.12.10"; $str_md5 = substr(md5($str), 0, 30); $date_md5 = substr(md5(date("Y-m-d")), 0, 20); $key_md5 = substr(md5("samplekey"), 0, 10); $id_md5 = md5($str_md5 . $date_md5 . $key_md5); $id = substr(base64_encode($id_md5), 0, 8); echo $id; PCサイトの場合、IDの元になる文字列は、IPアドレスが一般的です。 携帯サイトの場合は、携帯のユーザーID(uid)や固体識別番号など

    nemusg
    nemusg 2013/05/05