タグ

PHPに関するrichard_rawのブックマーク (80)

  • 休日個人開発で学ぶテストコード! 画像に“集中線”を合成するツールを作ってみよう - エンジニアHub|Webエンジニアのキャリアを考える!

    休日個人開発で学ぶテストコード! 画像に“集中線”を合成するツールを作ってみよう プライベートでも何か作りたい! そんなときの「今日からはじめる休日個人開発」シリーズ、第二弾はテストコードを書きながら簡単なMVCモデルの画像加工ツールを作ってみましょう。好きな写真に集中線を合成できます。 皆さん、プライベートで何か開発していますか? 「何か作りたい」という気持ちはあるものの、いまひとつ何から始めたらいいのか分からず、動けないままの人も多いと思います。 そんな皆さんのために、「仕事以外にも休日に個人で気軽に何かを作ってみよう!」という企画の第二弾です。今回は、第一弾で用意した開発環境を使って、画像を加工するツールを実際に作っていきます。 せっかくですので、ただ作るだけではなく、テストコードも一緒に書いてみましょう。最近は、CI(継続的インテグレーション)やCD(継続的デリバリー)も一般的にな

    休日個人開発で学ぶテストコード! 画像に“集中線”を合成するツールを作ってみよう - エンジニアHub|Webエンジニアのキャリアを考える!
    richard_raw
    richard_raw 2018/01/20
    なかなかテスト駆動開発できてないのでやってみたい。
  • PHPプログラムを書いたらマイナス21億行目あたりでエラーが出た - hnwの日記

    (2016/10/5 20:40 追記)誤解を招いている部分がありそうなので文末に補足を追記しました。巨大なプログラムをわせただけでPHPが死ぬわけではありません。 毎度おなじみ、意図的に重箱の隅をつついてみたよって話です。あるPHPプログラムを実行したら次のようなエラーに遭遇しました。 $ php over-2g-lines.php int(0) PHP Fatal error: Uncaught Error: Call to undefined function var____dump() in /Users/hnw/over-2g-lines.php:2150000004 Stack trace: #0 {main} thrown in /Users/hnw/over-2g-lines.php on line -214496729221億5千万4行目で致命的エラーが発生したよ!とい

    PHPプログラムを書いたらマイナス21億行目あたりでエラーが出た - hnwの日記
    richard_raw
    richard_raw 2016/10/07
    「/* (21億5千万行の空行) */」に仏教的な何かを感じた。あ、ハングアップするわけじゃないんですね。
  • DIS例2 / PHPは配列型と辞書(HaspMap)型が区別不能な言語! | PHPを使いもせずDISってる君達へ - Qiita

    PHPはよくDISられることがあります。しかし、実際にはほとんどPHPを利用していない人が印象だけでDISってることが多いような気がします。 そこで、PHPがよくDISられている点について、実際どうなのかをPHP未体験者向けに解説していきたいと思います。PHPを触ったことない人でもわかりやすいようにシンプル目な仕様のRubyを例に説明していきたいと思います!( Ruby触ったことなくても、その他のOOP言語を触ったことあれば雰囲気は理解できるように書いています ) DIS例1 / PHPは配列操作がしづらい PHPの配列操作は扱いづらい等とDISる人たちがいます。実際のところどうでしょうか。 以下のような処理を配列への中間変数を用いず行うコードを例に考えてみます。 0. [2,4,6,8,10]という配列を用意して 1. ↑の配列から8以下の数だけを選択した配列を作る 2. ↑の配列から各

    DIS例2 / PHPは配列型と辞書(HaspMap)型が区別不能な言語! | PHPを使いもせずDISってる君達へ - Qiita
    richard_raw
    richard_raw 2015/12/24
    要するに「標準関数をそのまま使うとハマる」ということですね。ちゃんとしたフレームワークを使えと。
  • PHP による hello world 入門 | 東北ギーク

    知る者は言わず、言う者は知らず — 老子 世界で最も有名なプログラムの 1 つに、 hello world というものがあります。 <?php echo 'hello, world'; 出力先に対して「hello, world」という 12 字を書き込むだけの単純なプログラムで、プログラミング言語やライブラリの利用例を最小限の形で示すものです。 この記事ではメジャーな Web プログラミング言語の 1 つである PHP 処理系が、hello world をどのように実行するのかについて、簡単に解説します。 以下の 4 節で構成されています。 「PHP スクリプト実行の大体の流れ」は実行時の概略を箇条書きでまとめたものです。 「SAPI」では、PHP 処理系の起動のされ方についての基礎知識を解説します。 「Zend Engine とオペコード」は PHP 公式処理系の仮想マシンの命令と、PH

    PHP による hello world 入門 | 東北ギーク
    richard_raw
    richard_raw 2015/06/19
    「記事タイトルが『PHP による hello world 入門』であって、『hello world による PHP 入門』ではないことに注意してください。この記事は PHP の入門記事ではありません。」ヒィッ……。
  • Apacheホスティング環境(Webサーバー+PHP実行環境)をコマンド一発で構築する一撃シェルスクリプト

    一撃シェルスクリプトとは これは私が作った造語で、厳密な定義というものを設けているわけではありませんが、「シェルスクリプト(と設定ファイルのひな形)を用意すれば、コマンドを1回実行するだけで環境構築ができてしまうというスグレモノ」を目指しています。現在のところ、線引きとして以下のように詳細なルールを作っています。 OSインストール直後に一撃シェルスクリプトを配置して動かすものとする 実行回数は1回のみで、人が張り付く必要のない設計とする 対話式の入力は可能な限り回避する 一撃シェルスクリプトで重視していないこと 一撃シェルスクリプトは、あくまで「シェルで頑張れる範囲で冪等性(べきとうせい)を確保する」ツールです。なので、上に記した「一撃シェルスクリプトの定義」にだいたい合致していれば「これは一撃シェルスクリプトだぞ」と名乗ってもよいと思っています。例えば、何がなんでも1枚のスクリプトファイ

    Apacheホスティング環境(Webサーバー+PHP実行環境)をコマンド一発で構築する一撃シェルスクリプト
    richard_raw
    richard_raw 2015/03/02
    Vagrantのプロビジョニングでシェルスクリプトを使ってるのでちょっと親近感が。
  • TechCrunch | Startup and Technology News

    Apple has engaged with many Indian authorities and officials in recent weeks and plans to soon hold conversations with NPCI for the launch of its payments service Apple Pay in the South Asian market,

    TechCrunch | Startup and Technology News
  • 電書ちょこっとツールズ

    スキャンデータなどの連番jpeg/pngファイルを、フィクスフォーマットのEPUB3やmobiファイルに変換するコマンドラインスクリプトです。 動作環境は、php5.3のスクリプトが動作する、MacOSX,Linux等。MacOSX 10.7,10.8なら特に別途インストール、設定は不要です。 生成されたEPUB3ファイルは、見開きを再現できる電書協の固定フォーマットEPUB3に準拠しています。以下のリーダーソフトで意図どおり閲覧することができるのを確認しています。 iOS6: iBooks3 , Kinoppy, Kobo Mac/PC: Kinoppy, Readium(Chrome拡張), Adobe Digital Edition2(見開き不可) Android4.2: Kobo, Kinoppy, Himawari Reader Kobo: (touch,glo) (見開きは不可

    richard_raw
    richard_raw 2014/12/25
    自炊データをiBooksで読みたいのでこちらを使わせてもらおう。リサイズは自前で何とかするか……。
  • 関数名によく使われる英単語(動詞)の意味とニュアンス | PHP Archive

    PHP に限らず、プログラミングで使われる多くの関数名は「動詞+目的語」という命名規則になっていることが多く、「insertPost()」であれば投稿を挿入するという意味が名前から読み取れます。 では投稿を削除する場合は delete でしょうか? それとも remove でしょうか? 関数は基的に英語を使うのが鉄則ですが、似たような意味を持つ単語などが多く厳密な意味の違いがわかりにくいことがあります。 そこで、プログラミングで関数名として一般的に使われている頻出語句をピックアップし、主な用途と細かい意味、ニュアンス、使い分けについて調べてみました。 追加・作成 set

    richard_raw
    richard_raw 2014/12/19
    「削除」と「検索」はどれを使えばいいのか分からなくなることがあったので助かります。
  • Sublime Text3で構文エラーをチェック

    こんにちは、つい最近メディア事業部脱退を表明したデザイナーの王です。 PhpStorm、Aptana、NetBeansなど、大抵のIDEは、コードを書きながら構文エラーをリアルタイムでチェックしてくれるとても便利な機能がついていますよね。 個人的にはPhpStormが一番使いやすかったですが、IDEだと、プロジェクト単位で管理しなければならないので、小回りが効くSublime Textも以前から愛用しています。特にSublime Textの「Multiple Selections」という機能が凄く便利で、一旦慣れてしまったら、この機能が使えないPhpStormで作業するとストレスが溜まってしまいます!! でも、はやりIDEのリアルタイムコード解析は使いたいなぁ〜〜 でも…でも… こんな葛藤に苦しんだ結果、とある偉大なプラグインが誕生しました!!その名も「SublimeLinter」です!

    Sublime Text3で構文エラーをチェック
    richard_raw
    richard_raw 2014/12/08
    SublimeLinter。それぞれの言語のLinterをインストールしなければいけないのがちょっと面倒臭いです……。
  • 24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza times

    こんにちは。今回は谷口が担当します。 paizaはこの度、ITエンジニア向けの無料オンラインプログラミング実行環境サービス『paiza.IO (パイザ・アイオー)』 のβ版を、日2014年11月17日からサービス開始いたしました。 『paiza.IO』は、ブラウザ上でコードが書け、書いたコードをその場で実行出来るオンラインプログラム実行環境です。 ブラウザだけでプログラミングがすぐ始められる【paiza.io】 from paiza on Vimeo. ■オンライン実行環境について ◆どうしてpaiza.ioを作ったの? これまでプログラミングを始める際、最大のハードルは「プログラムの実行環境を構築する事」でした。 これまでは、環境構築といえば初心者にとってハードルが高く、ものによっては細かい部分でつまづいたりなどして1~2日程度はかかる工程の面倒な作業でした。そのボトルネックを解消し、

    24のプログラミング言語がブラウザで即実行できる『paiza.IO』 - paiza times
    richard_raw
    richard_raw 2014/11/20
    環境構築がめんどくさいですよねー。
  • プログラマたちのバイブル、パーフェクトシリーズ全巻がついに電子書籍化!最新『改訂2版 パーフェクトJava』は紙・PDF版本日同時発売! | gihyo.jp

    プログラマたちのバイブル、パーフェクトシリーズ全巻がついに電子書籍化!最新『改訂2版 パーフェクトJava』は紙・PDF日同時発売! ワンランク上のプログラマを目指す方たち待望の、株式会社技術評論社が刊行するプログラマ向けの技術書パーフェクトシリーズがついに電子書籍化! シリーズはプログラマを対象に、RHP、RubyPythonの軽量言語に加えて、現在のWeb開発には欠かせないJavaScript、そして、JavaおよびC#の6言語+1フレームワーク(2014年11月現在)について、1つ1つの言語に丁寧かつ詳細に解説したバイブル的位置付けの技術書です。 今回、日発売の『改訂2版 パーフェクトJava』が紙・PDF版同時発売となった他、残りの6冊についてはEPUB・Kindle・Kobo版でお届けします(改訂2版 パーフェクトJavaのEPUB・Kindle・Kobo版については現

    プログラマたちのバイブル、パーフェクトシリーズ全巻がついに電子書籍化!最新『改訂2版 パーフェクトJava』は紙・PDF版本日同時発売! | gihyo.jp
    richard_raw
    richard_raw 2014/11/04
    おお、全巻電子書籍化されましたか。
  • 気づけばプロ並みPHP 副読本:お助け電子BOOKへの寄稿の顛末

    谷藤賢一さんの著書『気づけばプロ並みPHP~ショッピングカート作りにチャレンジ! 』に、発売1周年の謝恩キャンペーンとして『副読:お助け電子BOOK』が公開されました(*1)。私はこの副読の中で、『第2章 【徳丸 浩氏 スペシャル寄稿】安全なWebアプリケーションのために』を寄稿しています。このエントリでは、寄稿の顛末を報告したいと思います。 動機 私が書『気づけばプロ並みPHP』を購入したのは昨年の10月29日ですから、書が出版されてまもなく、今から約1年前です。私は書を一読して、セキュリティ上の多数の問題があることに気がつきました。 以前は、セキュリティ上の問題が多い書評をブログ記事として書くことも多かったのですが、この際は書評という形にするのはためらいがありました。その理由は以下の様なものです。 私のブログの読者層はセキュリティに関心の高い方たちであり、書の読者とは重

    richard_raw
    richard_raw 2014/10/15
    ノーギャラということで頭が下がる思いです。
  • DockerHub公式の言語Stack

    DockerHub公式の言語Stack DockerHub Official Repos: Announcing Language Stacks | Docker Blog DockerHubには公式のレポジトリがある.そこにはUbuntuやCentos,MySQLやPostgres,MongoといったDockerイメージがコミュニティーベースで,つまりより汎用的に使える形で開発され集められており,ベースイメージとして簡単に使えるようになっている. 今までは,OSのディストリビューションや,Webサーバ,DBなどがメインだったが,公式として各種プログラミング言語のベースイメージも公開された.現状(2014年9月時点)では,c/c++(gcc),clojure,golang,hylang,java,node,perlPHPpythonrailsrubyがある. 特徴 この公式の言語s

    richard_raw
    richard_raw 2014/09/26
    どんどん便利になっていってるぽいんですが私の理解が追いついてないのがツライ。
  • Filydoc:技術メモを公開するための何か - clock-up-blog

    Filydoc というものを作りました 公開場所 GitHub:https://github.com/kobake/filydoc デモサイト:Filydoc 実用(?)サイト:clock-up-memo 特徴 シンプルに Markdown ファイルを公開するためだけの Web フレームワーク フォルダ分けすると、それがそのままツリー構造として公開される アイテムの順番は名前順になるのでファイル名をうまく付けて運用 PHP 駆動なので、フツーのレンタルサーバで動く (しかし実は全文検索で grep 呼んでるので、ここは環境依存かも。さくらのレンタルサーバでは動いた) 使い方 Filydoc の zip か tgz を http://filydoc.net/ から入手、解凍。 data フォルダ内の .md ファイルを編集。書式は Markdown。 必要に応じてファイル増やしたりフォルダ増

    Filydoc:技術メモを公開するための何か - clock-up-blog
    richard_raw
    richard_raw 2014/07/08
    私はMarkdownをWordPressに貼り付けてたけど、こっちの方がいいですな……。
  • フェイスブックが独自のプログラミング言語「Hack」をオープンソース化|グロースハックジャパン|Growth Hack Japan

    Edited by Ryutaro Mori(グロースハックジャパン書いてる人) 最新記事『「グロースハックとは」 FB、Twitterの成長請負人が語るあなたの考えを覆すグロースの真実』 この度Facebookは、独自のプログラミング言語「Hack」をオープンソース化しました。 Business Insiderの元記事を基に、最新情報をお伝えします。 growth hack japan最新情報をTwitterで受け取る growth hack japan最新情報をFacebookで受け取る 「Hack」とは Facebookがこのほどリリースした「Hack」は、静的プログラミング言語と動的プログラミング言語両方の要素を持ち合わせ、迅速にコーディングを行いながら(動的の特徴)、簡単にエラーを回避出来る(静的の特徴)ことに特徴付けられます。PHPファイルとの互換性もHackの魅力の1つです。

    フェイスブックが独自のプログラミング言語「Hack」をオープンソース化|グロースハックジャパン|Growth Hack Japan
    richard_raw
    richard_raw 2014/03/24
    ブックマークコメントによるとJavaっぽいPHPらしい。
  • 「Webアプリエンジニア養成読本」とKodingでPHPを勉強する - uzullaがブログ

    昨日エントリ( http://uzulla.hateblo.jp/entry/2014/03/08/050621 )を書いたKodingですが、詳しくは昨日のエントリを見ていただくとして、今度発売される「Webアプリエンジニア養成読」をKodingで勉強するにはどうすればよいか書いてみます。 Webアプリエンジニア養成読[しくみ、開発、環境構築・運用…全体像を最新知識で最初から! ] (Software Design plus) 作者:和田 裕介,石田 絢一 (uzulla),すがわら まさのり,斎藤 祐一郎技術評論社Amazon 結果として、Kodingをつかえば、ChromeやFirefoxがPCにはいっていれば、PCに何もインストールすることなくブラウザ一つで学習ができました。 このエントリに記載されていること ・Kodingのアカウント取得 ・画面の簡単な説明 ・PHPをちょっ

    「Webアプリエンジニア養成読本」とKodingでPHPを勉強する - uzullaがブログ
    richard_raw
    richard_raw 2014/03/10
    Kodingは面白そうなサービスですな。
  • ソースコード20万行の大規模サイトのPHPを5.1から5.4に上げるためにやったことまとめ · DQNEO日記

    所要期間 着手しはじめたのが2010年12月ごろ、完了したのが2013年9月だったので何と3年近くかかったことになります。 長引いた原因は、日々の機能追加や運用をしながら孤独に片手間で細々とやってたからです。(単純に人手不足とも言う) また、PHPバージョンアップと同時にCentOSサーバを5から6にあげることにしたのでサーバ再構築のための工数も含まれています。 後半は仕事仲間が増えてその人が専業でバージョンアップ作業をやってくれたのでだいぶ楽できました。 それと専任のテスターさんたちにも参加していただいたので番で大きなトラブルなく完了することができました。 感謝感謝です。 サーバ入れ替え作業が終わってPHP5.1の入った古いサーバを削除したときの、まさに「技術的負債」を返済し終わった瞬間の、あのスッキリ感、もう言葉にはできません。 終わってみてこの件に関するRedmineのチケットを数

    ソースコード20万行の大規模サイトのPHPを5.1から5.4に上げるためにやったことまとめ · DQNEO日記
    richard_raw
    richard_raw 2013/11/18
    3年近く……!
  • Adobeサイトから漏えいした暗号化パスワードはなぜ解読されたか

    Adobe社のサイトの不正アクセス(参照、参照)によって、少なくとも3800万人のIDと暗号化されたパスワードが漏えいしたと言われています。既に報告したように、私のアカウントも漏えいしていました。 その後、『Adobeの情報流出で判明した安易なパスワードの実態、190万人が「123456」使用』というニュースが流れてきました。安易なパスワードが使われている統計は今までもあり、「パスワードの実態」に関しては「そんなものだろうな」と思いましたが、問題は、どうやって「暗号化パスワード」を解読したかです。 別の報道では、Adobeサイトがパスワードの暗号化に用いていたアルゴリズムはトリプルDESだったということです。トリプルDESは電子政府推奨暗号リストの今年の改訂でもしぶとく生き残り広く使われている暗号化アルゴリズムです。そんなに簡単に解読されたのでは問題ですが、実際には、「トリプルDESが解読

    Adobeサイトから漏えいした暗号化パスワードはなぜ解読されたか
    richard_raw
    richard_raw 2013/11/12
    トリプルDESが破られたわけではなく、推測しやすい保存状況だったと。
  • 新人コーダーに知っておいて欲しいリダイレクトの基本|クロノドライブ

    サイトを運営していると、サイト内のページの移動や削除、またはサイト自体の移転をすることがあります。その場合、リダイレクトという処理を用いて新たなページに転送を行いますが、正しい知識と手順を以って対応しなければ、検索順位の下降、ページランクやドメインエイジの喪失といったSEO的なペナルティを招いてしまいます。 そこで、そのようなペナルティを受けないために、ページ移動・サイト移転時の正しいリダイレクトの設定方法と、代表的なリダイレクトの種類やその実装方法をご紹介します。 リダイレクトの種類 リダイレクトには、HTMLJavaScriptといったクライアントサイドプログラム、PHPPerlといったサーバサイドプログラム、あるいは.htaccessの設定変更を行う等、様々な対応方法があります。そのうちのいくつかを、実際のサンプルソースとともに解説します。 metaタグによるリダイレクト hea

    新人コーダーに知っておいて欲しいリダイレクトの基本|クロノドライブ
    richard_raw
    richard_raw 2013/10/30
    PHPでリダイレクトしてみる。
  • PHP開発環境のサンプルVagrantfile

    PHPカンファレンス2013でPHP開発環境をVagrantで作る発表を行ったのですが、具体的なVagrantfileが欲しいという声を頂いたので、GitHubに公開しました。 ご自身で構築するベースになれば良いと思うので、どう作れば良いの?と言う方は参考にしてみて下さい。 なお、このリポジトリの Vagrantfile は、開発PC内の VirtualBox 上で開発環境として動かすことを想定しています。セキュリティについては考慮されていないのでご注意下さい。 vagrant-lapp-sample https://github.com/shin1x1/vagrant-lapp-sample このリポジトリは、PHPアプリケーション(CakePHP)をイメージしています。構成は以下です。 CentOS 6.4 Apache 2.2 PHP 5.4 PostgreSQL 9.3 phpPg

    richard_raw
    richard_raw 2013/10/10
    PHPを勉強したいのでありがたいです。