NetBeansでデバッグをするためにxdebugを入れてみた。 ググってみたら設定方法についていろんな情報が飛び交っていたので 自分が上手く入った方法をまとめておく。 xdebugダウンロード 以下リンクから自分のPHPのバージョンに合ったものをDL Xdebug: Download 私の場合は PHP5.3.5 32bit vc6 thread safe なのでWindows binariesの中から『PHP 5.3 VC6 TS (32 bit)』版をDL。 dllをextフォルダに入れる 私の場合は以下のようにdllを入れた。 D:\php\extphp_xdebug-2.1.1-5.3-vc6.dll php.iniに以下のように追記 ここがキモで最も情報が錯綜している箇所である。 以下をphp.ini追記することで動いた。 zend_extension="D:\php\ext\
さくらインターネットを使用しているお客さんのサイトのリニューアルをすることになったのだが、既存サイトがwordpressやらphpやらゴミゴミしていてPHP5.2からあげるのが億劫だったので特定のディレクトリのみPHPのバージョンをあげました。 必要なファイル php.cgi .htaccess さくらインターネットではこの2つのファイルが必要になります php.cgi 下記コードを記述したファイルを作成します #!/bin/sh exec /usr/local/php/7.1/bin/php-cgi さくらが用意していれば数字(7.1)の部分を変えるだけで任意のPHPを利用できる パーミッションは705(←重要)に設定します 何も設定していないと「604」になっていると思いますが、パーミッションを変更しておかないと「Internal Server Error」出るので気をつけます。 .h
php.cgi .htaccessと同じ階層に、php.cgiを追加します。 テキストエディタで以下の文言を記載し、php.cgiという名前で保存。 パーミッションは705にします。(755かも?) PHPのバージョン設定を変えたいとき 現在サーバーで使用しているPHPのバージョンは、 さくらのサーバーコントロールパネル>アプリケーションの設定>PHPのバージョン選択で確認できます。 TeraTermなどSSHでログインをしていれば、php -vとコマンドを打ってもよいでしょう。 コントロールパネルからだと、PHPのバージョン選択>新しいバージョンで、どのバージョンが使用できるかが選択できます。 既にPHPで作られたサイトを同じサーバーで運営している場合、安易に変更をすると、サーバーエラーの原因になります。 でも、使える関数の関係で、現在のバージョンとは違うバージョンを使用したいときがあり
レベルアップ問題集 このコーナーでは、プログラミングスキルを伸ばしたい方向けに問題セットとメニューを用意しました。 セットは一定の共通点でまとめられた問題集となっており、メニューは上から順番に解いていくとレベルアップできるようにまとめられた問題集です。 概要 プログラムを書けるようになるための一番の近道はたくさんコードを書くことです。 自分の実力や目的に合わせて問題を選び、レベルアップを目指しましょう。 なお、このコーナー内の問題については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。 授業や研修にもご利用いただけますので、ぜひ教材などにもお使いください。 最新情報
JavaScript Object Notation「JSONとは何か?」について、簡単に説明します。JSONという文字を見て「13日の金曜日」を思い浮かべてしまう人は、まずはその過ちに気付いて下さい。JSONとはJavaScript Object Notationの頭文字を繋げ合わせたものです。Notationは日本語で「表記法」。JavaScriptのオブジェクトの表記法を元にした、データフォーマットです。要はJavaScriptのオブジェクトみたいなデータ形式ですね。 様々なプログラム言語が対応しているJSONの最大の特徴は、例えばJavaScript、PHP、Rubyというような様々なプログラム言語がその取り扱いに対応していることです。データを用意する側は、JSONという形式のデータ1種類を用意しておくだけで、JavaScriptを使う人、PHPを使う人、Rubyを使う人などに対応
WebAPIでJSONファイルを使う機会があったので使い方をメモ。最近ではWebAPIはSNSやブログ、動画、音楽、写真などのメディア関係から郵便番号、地図、気象、交通網関係など幅広く使えるようになっているようです。 JSONファイルの取得 一応参考までに //指定のURLから取得 $json = file_get_contents($url); //JSONファイルは配列に変換しておく $arr = json_decode($json,true); //var_dumpで表示して確認(ここは不要) echo "<pre>"; var_dump($arr); echo "</pre>"; file_get_contentsで指定のURLのファイルを取得して来たら、json_decodeでJSON形式のものをPHP形式のものに変換します。第2引数をtrueにすると連想配列になります。(var
Webスクレイピングでページ処理をやろうとして、さて最初にログインしなきゃいけない場合はどうするんだ? と思って調べてみました。 いろいろな手法が紹介されていますが、PHPで処理する場合、このページが参考になりました。 PHPプロ! PHPプロ!はユーザーとして登録すると、IDとパスワードを使ってログインするようになっています。 ただし、上記のページのコード、一部修正しないと動かなかったので修正も含めてご案内します。 まず、PHPでcurlが使えるか、php_info()などで確認しておきます。 該当サイトのログインIDとパスワードを取得しておきます。 以下のロジックはすべてのサイトに対応しているわけではありません。 PHPの具体的な動作はこんな感じ。 ○ログインにIDとパスワードを使う。 ○POSTを使ってIDとパスワードを送って認証する。 ○サイト内の移動でCookieを使う。 (サイ
本コーナーは、技術評論社発行の書籍『PHPライブラリ&サンプル実践活用[厳選100]』の中から、特にBuild Insiderの読者に有用だと考えられる項目を編集部が選び、同社の許可を得て転載したものです。 『PHPライブラリ&サンプル実践活用[厳選100]』の詳細や購入は技術評論社のサイトや目次ページをご覧ください。 Goutteは、手軽にWebスクレイピングが行えるライブラリです。Webスクレイピングとは、Webページにアクセスして、そのHTMLから必要なデータを抽出する処理のことです。Googleなどの検索エンジンは、この技術を応用して、Web上のデータを採取しています。 名称: Goutte URL: https://github.com/fabpot/goutte インストール方法: include_path に配置 ファイル: goutte.phar インストール Goutte
多言語対応のPHPフォームを作成する機会があったのですが(中国語と韓国語)、送信内容がどうしても文字化けしてしまう。 それで、ちょっとmb_language() について調べてみたのでその時のメモです。 国内のサーバーはおおよそデフォルトでmb_language(Japanese)になっている事がほとんどだと思うのですが、この場合「ISO-2022-JP/Base64」が用いられます。 韓国語などで送信したい場合はmb_language(uni)にする必要があるのですが、この場合だと「UTF-8/Base64」となり、文字化けをおこさずに送信できます。 ただし、メールソフトがunicode対応ではない場合は、mb_language(uni)にしても文字化けは解消されません。 (といってもいまどきunicode対応ではないメールソフトは限られているのですが、筆者はたまたまEdmaxのun
比較的簡単にWebアプリケーションを構築することができるPHP。 プログラミングを始めたいと思った人が、初めて触るスクリプト言語としても人気です。 PHPに限ったことではないですが、プログラミング言語にはフレームワークと呼ばれる、アプリケーションソフトを開発する際に必要とされる汎用的な機能をまとめて提供してくる便利なソフトウェアが存在します。 いわゆるアプリケーション開発の土台ですね。 フレームワークは様々な種類があり、それぞれに特徴もあったりするので、PHPを始めたばかりの学生にとってはどれを選んだらいいのかわからないのではないでしょうか。 今回は、PHPにフォーカスし、各フレームワークの違いや特徴などを紹介したいと思います。 フレームワークのメリットとデメリット フレームワークを使用する際は、最初にメリット・デメリットをしっかりと理解しておく必要があります。 大まかにまとめると、下記の
PHPの関数で省略可能な引数を持った関数を宣言することはできますか? オプショナルな引数というような意味合いです。 //$iwidthは時と場合によって省略可能にしたい。 test_func(500); function test_func($isize[,$iwidth]) { print ”<HR size =$isize width=$iwidth>”; }
PHPでシンプルなページャーつくってみた すごくつまらなくて申し訳ないですが、PHPでページャー(ページを分割したときのナビゲーション)を作ってみましたので載せておきます。 投稿日2011年11月22日 更新日2011年11月22日 php <?php function pager($c, $t) { $current_page = $c; //現在のページ $total_rec = $t; //総レコード数 $page_rec = 10; //1ページに表示するレコード $total_page = ceil($total_rec / $page_rec); //総ページ数 $show_nav = 5; //表示するナビゲーションの数 $path = '?page='; //パーマリンク //全てのページ数が表示するページ数より小さい場合、総ページを表示する数にする if ($total_
// 現在日付から○日の取得 echo "1日前" . date("Y/m/d", strtotime("-1 day" )); echo "1ヶ月前" . date("Y/m/d", strtotime("-1 month")); echo "1年前" . date("Y/m/d", strtotime("-1 year" )); echo "1週間前" . date("Y/m/d", strtotime("-1 week" )); // 指定日付から○日の取得 echo "1日前" . date("Y/m/d", strtotime("2007/12/20 -1 day" )); echo "1ヶ月前" . date("Y/m/d", strtotime("2007/12/20 -1 month")); echo "1年前" . date("Y/m/d", strtotime("200
メールの送信方法 PHPではメール送信用の関数が用意されているため、メール送信プログラムを簡単に作成することができます。 多くのプロバイダでは、迷惑メールが大量に送信されるのを防ぐための対策が行われています。その影響で、WindowsにインストールしたPHPからはメールが送信できないことがあります。このページのプログラムを実行した際に以下のようなメッセージが表示される場合、メールの送信に失敗しています。 Warning: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() プロバイダから回避方法が告知されていることもありますが、環境によって設定
PHPカンファレンス関西2012で使用したスライドです。完全な内容は下北沢で開催した際のスライドと動画を御覧ください。Read less
PHPでサーバーの死活管理 サーバーが生きてるか死んでるかを確認するのにPingを使う方はいると思いますが、 今回PHPからPingを使う方法を知ったので自分用にメモ。 execを使用する方法、fsocketopenを使用する方法の2パターンありますが、 fsockeopneを使用するとポートの指定も出来るので、MySQLやApacheが稼働しているかのチェックにも使えます。 ソースコードは以下 execでサーバーにpingを送信する方法 /* Ping送信プログラム */ function ping($host) { $r = exec(sprintf('ping -c 1 -W 5 %s', escapeshellarg($host)), $res, $rval); //pingの結果を表示 //print_r($r); return $rval === 0; } /* $hostに死
TransmitMailは日本製の汎用型メールフォールソフトウェアです。 Webサイトにメールフォームの設置というのはよくあることです。そんな時に使える日本語対応のメールフォームソフトウェアがTransmitMailです。 デモです。多数の入力項目、入力チェックに対応しています。 必須チェックのエラーです。画面上と項目の横と二つ表示されます。 メールアドレスフォーマットのチェックもできます。 半角英数などの文字種チェックもあります。 入力の後、確認画面が表示されます。 完了ページです。 確認メールも送信されて、入力内容の確認ができます。 TransmitMailはPHP5.2以上で動作します。また、マークアップエンジニアが開発したとのことで、Dreamweaverやマークアップエンジニアにとって優しい作りになっています。セッションによって重複送信を防ぐ仕組みがあります。静的サイトにメールフ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く