タグ

phpに関するtomoworksのブックマーク (78)

  • PHPリファレンス(fwrite()、fputs())

    スポンサードリンク オープンされたファイルに書き込むには、fwrite()、fputs()関数を使います。 fwrite( ファイルハンドル , 出力データ , [ サイズ ] ) fputs( ファイルハンドル , 出力データ , [ サイズ ] )

    tomoworks
    tomoworks 2012/11/30
    fwriteとfputsは同じ(教科書にfputs掲載なかったのでメモ)
  • セッション管理

    セッションとは Webアプリケーションにおけるセッションとは、「ユーザーのアクセスに対してユーザー毎に変数を保持する」、「複数のページ間で、変数の共有を可能にする」とあります。Webサイトを訪れた訪問者が行う一連の行動や、その行動を通じてやり取りされる情報などがセッションにあたります。 PHPでは、セッションを理解することが重要なポイントになるので、ここではセッション管理の仕組みを分かりやすく解説していきます。 クッキーの章でも解説しましたが、Webデータのやり取りには、HTTPプロトコルというWebブラウザとWebサーバ間で交わされるインターネットプロトコルが使用されています。HTTPプロトコルには、状態を保持する機能がなく、ユーザー(ブラウザ)が連続的に複数回のアクセス(Webページの表示)をしても、サーバ側はそれを特定のユーザーの連続したアクセスと認識せず、複数のユーザーが複数回

  • MAMPのPHPでの文字化けを直す

    MAMPでPHPの勉強をしようと思ったら、日語が文字化けしてしまいました。 こちらの記事「MAMPの文字化けを治し日語が表示されるようにする.MacビギナーPrograming」を参考にさせて頂き、無事文字化けが直りました。MAMPのバージョンによってファイルが入っている位置が少し変わっているようですのでそれも合わせてメモです。 私がインストールしているMAMPはデフォルトのPHPが Version 5.3.6 が入っているバージョンのものです。 手順 MAMPのデフォルトのエンコーティングがUTF-8ではないようなので、それを修正します。 Finderから、”アプリケーション” → ”MAMP” → “bin” → “php” → “php5.3.6” → ”conf” の順に開き、”conf” の中の”php.ini”のファイルをテキストエディタで開きます。 ”php.ini”のフ

    MAMPのPHPでの文字化けを直す
    tomoworks
    tomoworks 2012/11/21
    mb_などこれで使えるようになった。
  • PHP: Manual

    PHP の振る舞いの変更APCu — APC User CacheComponereエラー処理 — エラー処理およびログ記録FFI — Foreign Function InterfaceOPcache出力制御 — 出力バッファリング制御PHP Options/Info — PHP オプションと情報phpdbg — 対話的な PHP デバッガrunkit7uopz — Zend に対するユーザー操作WinCache — PHP 用の Windows キャッシュXhprof — 階層型プロファイラYac音声フォーマットの操作OpenAL — OpenAL 音声バインディング認証サービスRadiusコマンドライン関連Readline — GNU Readline圧縮およびアーカイブBzip2LZFPharRar — Rar アーカイブZipZlib — Zlib 圧縮暗号Hash — HASH

    PHP: Manual
    tomoworks
    tomoworks 2012/11/20
    関数リファレンス。大事。
  • 10日で覚えるPHPのキソ(超基礎編)の記事一覧ページ | バシャログ。

    横浜にある株式会社シーブレイン Web制作スタッフによるブログです。 「現場で使えるテクニック」をモットーに、Web制作全般についてお届けします。

    10日で覚えるPHPのキソ(超基礎編)の記事一覧ページ | バシャログ。
    tomoworks
    tomoworks 2012/11/14
    復習によいわ。
  • PHPのhtmlspecialcharsにはENT_QUOTESを付ける:phpspot開発日誌

    htmlspecialchars ( ) でセキュリティ対策( ENT_QUOTES もね!) PHPhtmlspecialcharsにはENT_QUOTESを付ける。 htmlspecialchars でXSS対策をしていたと思ったら、デフォルトでは シングルクオートをエスケープしてくれない(マニュアル参照) htmlspecialchars($str, ENT_QUOTES); ENT_QUOTES を指定することで、シングルクオートも ' にエスケープ出来ます。 ZAPAブロ〜グのZAPAさんの指摘するh関数を定義してフレームワークなどに組み込んでおくのがスマートなのかもしれませんね→htmlspecialchars関数を簡単にする 意外に知られていないかもしれないので、念をのため紹介しておきます。(知っている人はごめんなさい) その危険な例をしめしてみます。 例えば、h

    tomoworks
    tomoworks 2012/11/14
    ふむふむふむ。
  • htmlspecialchars関数を簡単に扱えるようにする

    特殊文字を HTML エンティティに変換してくれるhtmlspecialchars関数。 PHPでは基中の基である関数でありながら、名前の長さやオプションの設定などが面倒で困ったものです。「htmlspecialchars」は覚えられても、オプションの「ENT_QUOTES」まで覚えるのはなかなか大変だったりします。でも、ここで手を抜くと簡単に脆弱なアプリケーションができあがってしまう危険性があります。特にユーザーからの入力には、手軽にがっちり入力保険をかけておくべきです。 そんなわけで、htmlspecialcharsを簡単に扱えるようにする方法を考えてみました。 お知らせ:PHP5.4にて、htmlspecialchars()関数に互換性の問題が出てきましたので、当ページでも第三引数に文字コードを指定するコードに変更しました。以下、第三引数の"UTF-8"の部分は、利用中の文字コー

    htmlspecialchars関数を簡単に扱えるようにする
    tomoworks
    tomoworks 2012/11/14
    ふむふむ。
  • 10日で覚えるPHPのキソ 第 8 回 データの受け取り(POSTとGET) | バシャログ。

    第 8 回は、POSTとGETという方法を使ったデータの受け取りについてお話します。 申込みフォームなど、Webページからデータを入力するページがありますよね? 今回はその仕組みについてお話いたします。 例えば、以下のような名前とブログ名を入れるフォームがあります。 入力して送信ボタンをクリックすると以下のように表示されます。 (○○や△△は入力した文字列です。) これらはどのように送信されているのでしょうか? ではまず、データ送信の方法についてお話します。 WebブラウザからPHPへのデータ送信方法のうち、代表的なものは以下の2種類です。 POST form要素(<form>タグ)のmethod属性がPOST GET form要素(<form>タグ)のmethod属性がGET PHPプログラムでデータを受け取る変数(配列)は以下の通りです。 $_POST $_POSTは、POST形式のH

    10日で覚えるPHPのキソ 第 8 回 データの受け取り(POSTとGET) | バシャログ。
    tomoworks
    tomoworks 2012/11/14
    何度やっても忘れるPOSTとGETを復習(TT)
  • より良いPHPerになるための20Tips

    去年の話ですが、海外でこんな記事が上がっていました。 20 Tips you need to learn to become a better PHP Programmer 記事の内容は、かなりレベルが低いです。 しかし、初心者のうちに知っておけば、より早く成長出来るでしょう。 初心者PHPerのために、この記事の翻訳を載せます。 20 Tips you need to learn to become a better PHP Programmer PHPは、同じオブジェクトの扱い方でも複数の書き方を持っている、とても気まぐれなプログラミング言語だ。 詳しくは、私の書いた”The Art of Programming“を読むと良い。 これから書くTipsは、過去のプロジェクトから私が学んだコードの可読性、メンテナンス性を上げ、あなたを素晴らしい、より進んだPHPプログラマーにするもの

    tomoworks
    tomoworks 2012/11/14
    ほう、これは興味深い!
  • 文字列の出力に使用するechoとprintの違い

    PHP で文字列を出力するには echo と print を使用します。この 2 つは関数ではなく PHP の言語構造の一つです。ここでは PHP で文字列を出力するときに使う echo と print の違いについて解説します。

    文字列の出力に使用するechoとprintの違い
    tomoworks
    tomoworks 2012/11/12
    echoは複数の引数を指定できる。printはひとつだけ。
  • 5分でできるPHPセキュリティ対策 - ぼくはまちちゃん!

    こんにちはこんにちは!! Webプログラミングしてますか! よく「PHPセキュリティがダメ」とか言われてるよね。 でもそれって、べつにPHPが悪いんじゃなくて、 たぶん、セキュリティとかが、まだよくわからない人が多いだけなんじゃないかな。 がんばって勉強しようと思っても、なんだか難しい理屈が並んでいたりするしね…。 なので今日は、セキュリティ対策について、 「これだけやっとけば、わりと安全になるよ」ってことを、初心者むけに、大雑把に書いてみます! 理屈がわからなくても、最初はコピペでも、 なにもやらないより、やったほうがきっとマシになる! 1. XSS対策 動的なものを表示するとき、全部エスケープすればokです! (NG) あなたの名前は <?= $name ?> ですね! ↓ (OK) あなたの名前は <?= htmlspecialchars($name, ENT_QUOTES) ?>

    5分でできるPHPセキュリティ対策 - ぼくはまちちゃん!
  • PHP | 三項演算子

    条件式を評価し、TRUEであれば式1、FALSEであれば式2を返します。 if..elseの構文ににていますが、if文とは異なり三項演算子は演算子の1つですので結果として式を返します。if文のように条件に応じた処理を記述するのではない点に注意して下さい。 実際には次のように記述します。

    tomoworks
    tomoworks 2012/11/08
    条件式 ? 式1 : 式2
  • PHP: PHP マニュアル - 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

    PHP: PHP マニュアル - Manual
    tomoworks
    tomoworks 2012/11/07
    これが公式マニュアルか。(知っていたが、トップページブクマしてなかた。)
  • PHP: rand - Manual

    オプションの引数 min,max を省略してコールした場合、rand() は 0 と getrandmax() の間の擬似乱数(整数)を返します。 例えば、5 から 15 まで(両端を含む)の乱数を得たい場合、 rand(5, 15) とします。 警告 この関数が生成する値は、暗号学的にセキュアではありません。そのため、これを暗号や、戻り値を推測できないことが必須の値として使っては いけません。 暗号学的にセキュアな乱数が必要な場合は、Random\Randomizer を Random\Engine\Secure と一緒に使いましょう。簡単なユースケースの場合、random_int() と random_bytes() 関数が、オペレーティングシステムの CSPRNG を使った、 便利で安全な API を提供します。 注意: (Windows のような)いくつかのプラットフォームでは、g

    PHP: rand - Manual
    tomoworks
    tomoworks 2012/11/07
    ランダムに表示 $sample[rand(0,5)] とか。
  • PHP: phpinfo - Manual

    現在の PHP の状態に関する、多くの情報を出力します。出力される情報には、 PHP コンパイルオプションと拡張モジュール、PHP のバージョン、 サーバー情報と環境(モジュールとしてコンパイルされた場合)、 PHP の環境、OS バージョン情報、パス、構成オプションのマスター およびローカルの値、HTTP ヘッダ、PHP License などがあります。 システムの設定はそれぞれ違うため、実行時設定 や 利用できる 定義済みの変数 を調べるために phpinfo() がよく使われます。 また、phpinfo() には EGPCS (Environment, GET, POST, Cookie, Server) の情報が含まれているため、デバッグツールとしても便利です。 パラメータ flags 以下にあるconstantsビット値をひとつまたは 複数個を加算して、オプションのflags引数

    tomoworks
    tomoworks 2012/11/07
    phpinfo
  • CakePHP: 高速開発 php フレームワーク。 Home

    New CakePHP 5.0 Chiffon. Faster. Simple. Delicious. What's new in version The migration guide has a complete list of what's new in. We recommend you give that page a read when upgrading. A few highlights from 5.0 are: PHP 8.1 required. Improved typehints across the framework. CakePHP now leverages union types to formalize the types of many parameters across the framework. Upgraded to PHPUnit 10.x

    CakePHP: 高速開発 php フレームワーク。 Home
    tomoworks
    tomoworks 2012/11/02
    実は試したことない。
  • phpのisset()とis_null()とempty()とif($foo)の違いにいまさら気がついた - kanonji’s diary

    phpで変数の値の有無について判別する場合、isset()やempty()やif文にそのまま変数だけ書いたりします。 この判別がゆるゆるで、例えば empty('0') は string が入ってるのに true で空っぽ扱いです。 確かにゼロですけどね。 柔軟で人間らしいという声もあるけど、シビアに判別したい時は、勘違いしてたら怖いので一々ドキュメントを確認しないとだったりします。 この柔軟性に加えて、タイトルにもあるとおり4種類の判別方法があって、人によって使うのが違ったりするのでちょいちょい混乱します。 実は判別方法は4種類じゃなくて2種類だった さっきも、ちょっと分からなくなってドキュメントを見てたんですが、いい加減把握しようとおもってよーく見てたら気がつきました。 <?php isset($foo) === !is_null($foo); ($foo) === !empty($f

    phpのisset()とis_null()とempty()とif($foo)の違いにいまさら気がついた - kanonji’s diary
  • PHP :: 否定の!、is_null()、isset()、empty() の挙動の違い [Tipsというかメモ]

    否定の!、is_null()、isset()、empty() の細かな挙動の違いをすぐ忘れるのでメモ。 check() という関数を作り、「空文字」「文字列の0」「数値の0」「false」「null」「空の配列」で動作確認を行った。 動作確認で使用したコード <?php $empty_str = ''; $str0 = '0'; $int0 = 0; $false = false; $null = null; $empty_array = array(); check('empty_str', $empty_str); check('str0', $str0); check('int0', $int0); check('false', $false); check('null', $null); check('empty_array', $empty_array); function ch

    tomoworks
    tomoworks 2012/09/24
    empty($arr) だけの判定だと、$arr に 空文字が入っていた場合でも true になってしまう
  • preg_replaceのpattern、replacement引数には配列が使える - railtownの日記

    知りませんでした。こういう使い方ができるんですね。 <?php $string = 'The quick brown fox jumped over the lazy dog.'; $patterns[0] = '/quick/'; $patterns[1] = '/brown/'; $patterns[2] = '/fox/'; $replacements[2] = 'bear'; $replacements[1] = 'black'; $replacements[0] = 'slow'; echo preg_replace($patterns, $replacements, $string); ?> 結果:The bear black slow jumped over the lazy dog. 普通にphpのマニュアルに載ってることなんですが、何かに使えそうな気がします。 http:

    preg_replaceのpattern、replacement引数には配列が使える - railtownの日記
    tomoworks
    tomoworks 2012/09/13
    知りませんでした(TT)
  • http://www.favorite-labo.org/view/254