タグ

phpに関するtakehikomのブックマーク (33)

  • GitHub - Bad Todo 非常に多種の脆弱性を含む診断実習やられアプリ

    You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session. You switched accounts on another tab or window. Reload to refresh your session. Dismiss alert

    GitHub - Bad Todo 非常に多種の脆弱性を含む診断実習やられアプリ
  • P++: 銀河に平和をもたらすための奇策と決着 - Qiita

    PHP 8から、PHPは「PHP」と「P++」という2つの言語を提供するようになる というキャッチーな紹介をするP++: 静的型付けをめざすPHPという記事がそれなりに話題になり、このニュースは目覚しく革新的な内容で、多くのひとの目を引き付けました。 これは早まった理解であり、ほとんど誤報と言ってもいい内容でした。2019年8月15日には提案者人も、少くとも「P++」の計画を短期的に実現するととは非現実的であり時期尚早であることを認めています。 この記事では、PHP開発の現状、なぜ野心的なP++計画が提案され、事実上撤回されたかの経緯について紹介します。 [中立性のための表示] この記事の著者@tadsanはPHPの静的解析を強く推進する立場です。 PHPゆるふわCI入門 PHP型検査・夢と理想と現実) 三行で要約 PHPはバージョンを経るごとに「歴史的経緯」による負債が削ぎ落されてきた

    P++: 銀河に平和をもたらすための奇策と決着 - Qiita
  • PHP: PHP タグ - Manual

    PHP タグ PHP はファイルを解析して開始タグと終了タグ (<?php と ?>) を探します。 タグが見つかると、PHP はコードの実行を開始したり終了したりします。 このような仕組みにより、PHP を他のあらゆる形式のドキュメント中に 埋め込むことができるのです。つまり、開始タグと終了タグで囲まれている 箇所以外のすべての部分は、PHP パーサに無視されます。 PHP では、短い形式のechoタグ <?= も使えます。 これは、より冗長な <?php echo を短くしたものです。 1. <?php echo 'XHTMLまたはXMLドキュメントの中でPHPコードを扱いたい場合は、このタグを使いましょう'; ?> 2. 短い形式の echo タグを使って <?= 'この文字列を表示' ?> とすることもできます。 これは <?php echo 'この文字列を表示' ?> と同じ意味

  • ubuntu 16.04 インストール(6) apache, php

    ローカルにwebサーバが立ってると何かと便利なので、apacheを入れます。素のapacheと違ってhttpd.confが細分化されていて、debianの作法に従って設定する必要があって知らないと難しいです。 sudo apt install apache2 いくつかのモジュールを有効化します。 sudo a2enmod userdir sudo a2enmod include sudo a2enmod cgid これらは、実際には/etc/apache2/mods-availableにあるファイルから/etc/apache2/mods-enabledへリンクを張っていて、mods-enabled以下のファイルが設定に読み込まれるという仕組みです。 次に、自分のよく使う設定をしていきます。public_htmlの有効化とcgiの有効化です。デフォルトで使われている設定ファイルは/etc/a

    ubuntu 16.04 インストール(6) apache, php
  • サーバ情報がダダ漏れになってます : makoto_fujimotoのblog

    昔、エンジニアをマネジメントしてた際に口を酸っぱくして言っていたことがあります。 「"phpinfo()"を書いたPHPファイルを置きっぱなしにするな」 このPHP関数はApacheやPHPの設定情報を確認する際に便利で、バージョンを初め各モジュールのインストール状態やパスや環境変数の大半を見ることができます。この情報を基準としてプログラミング作業などを行います。 反面、これらの出力はこれからサイトに攻撃を仕掛けようとするハッカーにとっても非常に有用な情報となり、つまり「手の内」を自らさらけ出してしまうことにもなります。したがってこの様なPHPファイルの所在を知られることはサイトの脆弱性を著しく高めることになります。 プログラマやネットワークエンジニアは開発初期にphpinfoの内容を確認するためにPHPファイルを使用しますが、このファイル名が"性善説"に基づいて命名されることが多く、しか

    サーバ情報がダダ漏れになってます : makoto_fujimotoのblog
    takehikom
    takehikom 2015/11/25
    『"phpinfo()"を書いたPHPファイルを置きっぱなしにするな』
  • Javaで書かれたPHP処理系のJPHPが高速だった - hnwの日記

    JPHPというJavaで書かれたPHP処理系があります。これは2013年10月にはじまった新しいプロジェクトで、大半をメイン開発者一人で開発しているようですが、既に一定以上の完成度です。また、内部的にはPHPファイルを解釈して直接Javaバイトコードにコンパイルしており、かなり高速なPHP処理系になっています。 他のPHP処理系と異なり、既存のPHPコードをWebサーバ上で動かすことを重視していないようにも見えますが、興味深いプロジェクトですので紹介します。 JPHPを動かしてみる さっそくJPHPを試してみましょう。現時点ではGitHubからソースコードを持ってきてビルドする必要があります。JDK7以上が必要ですので注意してください。JPHPのドキュメント「Getting Started」の通り、次のようにしてJPHPがビルドできます。 $ git clone https://githu

    Javaで書かれたPHP処理系のJPHPが高速だった - hnwの日記
  • 忘れやすい真偽値のまとめ - 夜の Discovery

    忘れっぽいのでまとめておきます。 ruby Rubyの真偽値はつぎの通り。trueは真な値のうちの代表的な値である。0や""も偽じゃない。 偽 - nil, falseのみ 真 - 偽以外 trap真偽値 - Rubyリファレンスマニュアル http://www.ruby-lang.org/ja/man/html/trap_BFBFB5B6C3CD.html php boolean に変換する場合、次の値は FALSE とみなされます。 boolean の FALSE integer の 0 (ゼロ) float の 0.0 (ゼロ) 空の文字列、 および文字列の "0" 要素の数がゼロである 配列 ゼロを要素とする オブジェクト (PHP 4のみ) 特別な値 NULL (値がセットされていない変数を含む) 空のタグから作成された SimpleXML オブジェクト その他の値は全て TRU

    忘れやすい真偽値のまとめ - 夜の Discovery
  • Happy Programming » PHPでarray_flatten

    PHPには多次元配列をフラットにする関数は用意されていないようだ。 だが、例えばYahoo等で"array_flatten"と検索するといろんなページが引っかかってくる。 Rubyで配列をフラットにするメソッドがflattenで、PHPでは配列に対する関数の多くにarray_という接頭辞が付くのでそんな関数あるかなと思って適当に考えただけなのに。 とはいえ、すでにいたる所で"array_flatten"という名前でその目的の関数が定義されてた。 PHPのマニュアルページにもある。 処理の方法はいろいろとあったが3つほどメモっておく。 それぞれコードは その1: function array_flatten($array) { $tmp = array(); while (($val = array_shift($array)) !== null) { if (is_array($val))

  • 正規表現チェッカー PHP: preg_match() / JavaScript: match()

    PHP: preg_match() / JavaScript: match() 正規表現チェッカー ver3.1 PHP及びJavaScriptコーディング中に正規表現を記述する際の動作チェック等にご利用ください。 正規表現と対象文字列を入力し、[チェック!]ボタンをクリックすると、PHP: preg_match()と JavaScript: match()の実行結果がフィードバックされます。 正規表現

  • PHP+ImagickでSVGを画像変換する手順まとめ

    PHP+ImagickでSVGを画像変換してみるまでの流れをまとめておきます。 実行環境はCentOS 6.2です。 peclインストール [shell] # yum -y install php-pecl [/shell] ImageMagick、iMagickインストール [shell] # yum -y install ImageMagick ImageMagick-devel # pecl install imagick # echo "extension=imagick.so" > /etc/php.d/imagick.ini [/shell] 日フォントにTakaoゴシックを使う。 Takao Fonts https://launchpad.net/takao-fonts 上記URLからダウンロードしたフォントを、/usr/share/fonts/takao-gothic/

    PHP+ImagickでSVGを画像変換する手順まとめ
  • mb_convert_encodingのautoが危険な理由 - Qiita

    mb_convert_encoding ( string $str , string $to_encoding [, mixed $from_encoding ] ) は文字エンコーディングを変換する関数です。 mb_convert_encodingに潜む問題 第3引数の $from_encoding には変換前の文字エンコーディング名を指定しますが、ここを"auto"と指定しておくと、環境によっては Warning: mb_convert_encoding(): Unable to detect character encoding のようなエラーが発生し、文字エンコーディングの変換が失敗する場合があります。 ですので、"auto" は極力使わず、文字エンコーディングを指定することをおすすめします。 autoとphp.iniの依存関係 なぜこのようなエラーが発生するかというと、autoは

    mb_convert_encodingのautoが危険な理由 - Qiita
  • PHP 5.5 で mysql 拡張モジュールが非推奨になり、将来において WordPress を筆頭にさまざまな CMS のアップグレード作業が必要になります

    PHP 5.5 で mysql 拡張モジュールが非推奨になり、E_DEPRECATED エラーが表示されるようになりました。将来の PHP のバージョンで削除されます。 mysql 拡張モジュールに依存する CMS を使ってサイトを運用している場合、将来、運用サーバーに導入されている PHP のバージョンの切り替えに備えて、 mysqli もしくは PDO に対応した CMS のバージョンへのアップグレードするか、別の CMS やウェブサービスに切り替える必要があります。 多くの PHP 製の CMS が共有ホスティングにインストールされており、共有ホスティングは比較的古い PHP のバージョンのサポートを続ける傾向にありますが、古い PHP のバージョンを使い続ける場合、PHP のバグやセキュリティの未対応、より新しい PHP のバージョンを最小バージョンとするライブラリや CMS を導

    PHP 5.5 で mysql 拡張モジュールが非推奨になり、将来において WordPress を筆頭にさまざまな CMS のアップグレード作業が必要になります
  • SQLiteへの接続

    PHP では色々なデータベースにアクセスして利用することができます。ここでは PHP からデータベースの一つである SQLite へ接続する方法について解説します。 ※ SQLite のインストール方法やより詳細な利用方法については「SQLite入門」を参照して下さい。

    SQLiteへの接続
  • Fatal error: Maximum execution time of 30 seconds exceededの対処法 - [PHP + PHP] ぺんたん info

    Fatal error: Maximum execution time of 30 seconds exceededの対処法 PHPでは無限ループなどの対策のため、PHP処理のタイムアウトが設定されています。 [参考記事] ブラウザの中止ボタンを押したときに処理を停止させる このタイムアウトまでの時間は標準では30秒となっています。 PHPの処理が実行されて、30秒以上経過すると次のようなエラーが出て、PHPの処理は停止します。 Fatal error: Maximum execution time of 30 seconds exceeded この時間を変更するにはいくつかの方法があります。 以下は120秒に変更する場合の設定例です。 php.ini max_execution_time = 120 httpd.confや.htaccess php_value max_execution

  • 【PHP】プログラムでPath(パス)をセットする

  • エラー:「Smartyerror:unabletoreadresource」の解決方法を教えてください。 - 米田聡著『PHPでつくるWE... - Yahoo!知恵袋

    エラー:「Smarty error: unable to read resource」の解決方法を教えてください。 エラー:「Smarty error: unable to read resource」の解決方法を教えてください。 米田聡 著 『PHPでつくるWEBアプリケーション製作講座』(2009) ページ:66~70 このを参考にしてアンケートのphpを「Smarty」を利用して作成しました。 Smartyはhttp://www.smarty.net/download.phpの 「Smarty 2.6.26 (.tar.gz) (.zip) June 18th, 2009」をzipでダウンロードしました。 プログラムは、付録のCDなどはなかったので、載っているサンプルを参考に、ほとんどそのままですが手書きで書いてアップロードしました。 書いたプログラムは以下のような感じです。 【i

    エラー:「Smartyerror:unabletoreadresource」の解決方法を教えてください。 - 米田聡著『PHPでつくるWE... - Yahoo!知恵袋
  • WordPressのテーマデザインでよく使うPHP構文、if-else文について

    前回に、 WordPressのテーマデザインでよく使うPHP構文、if文について という記事を書きました。 PHPプログラムにおいて、if文は、いわゆるPHPの制御構造、条件分岐と言いまして、その条件式がTRUE(当てはまる)の場合にのみ、処理を実行するPHP関数です。なので、その条件式がFALSE(当てはまらない)の場合には、if文の中は無視されて何の処理も行われません。 そこで、その条件式がFALSE(当てはまらない)の場合にも、何かしらの処理がしたい場合があると思います。 そのような時に用いるのが、PHP構文のif-else文です。 なお、if-else文は、if文と同様に、他のif文やif-else文の中に何重にも入れ子ができるので、柔軟に対応ができます。つまり、if文やif-else文の中にさらにif文やif-else文を書くこともできます。 具体的な使い方の説明を致します。 i

  • 条件分岐 | PHP Labo

    条件分岐について ここまでのプログラムは、書かれた内容を上から順番に実行していくのみのプログラムでした。ですが条件分岐を使用すれば、条件によって処理内容を変更することができるため、複雑なプログラムを作成することができるようになります。 具体的には、以下のような書式で条件分岐を行います。 if (条件) { 条件に一致した場合に実行するプログラム } else { 条件に一致しなかった場合に実行するプログラム } このように書くことで、条件に一致したかどうかで処理内容を振り分けることができます。ちなみに if は英語で「もし~なら」、else は「そうでなければ」という意味です。 以下に、条件分岐を使用したプログラムを記載します。 <?php $sample = 10; if ($sample > 5) { echo "変数sampleの内容は5より大きいです。"; } else { ech

  • 知っとくと便利なPHPのテクニック9つ:phpspot開発日誌

    9 Useful PHP Functions and Features You Need to Know | Nettuts 知っとくと便利なPHPのテクニック9つが掲載されていました。 初心者の方は勿論、PHPを長年使ってる人にも使えるテクニックが載っていましたので勉強がてらにメモ。 func_get_args() 関数で可変引数 を受け取る 通常、関数といえば、次のように引数と共に定義します。 function hoge($arg1, $arg2) { } のように定義して引数を受け取りますが、好きな個数で引数を受け取りたい場合は、次のようにfunc_get_argsで受け取れます。 function hoge() { $args = func_get_args(); foreach ($args as $key=>$value) { echo "arg{$key} is $value

  • HTTPアクセスしてスクレイピングしてみた。 - Affamative Way

    最近、仕事はテスターなので 引きこもってコードが書いてみた。 HTTP Class使ってみた。 PHP用、外部接続にcURLかfsockopenが選べるHTTPクラス:phpspot開発日誌 で紹介されてた便利そうなHTTP Classを使ってみた。 しょっちゅう見るUIのひどい携帯サイトのラッパーサイトを作るのに使ってみたけどとっても使いやすい。 <?php $http = new Http(); $http->setMethod('POST'); $http->setUseragent(REQUEST_USERAGENT); $http->setReferrer( $referer ); $http->followRedirects(true); $http->setMaxredirect(3); $http->addParam( 'id', $id); $http->execute(

    HTTPアクセスしてスクレイピングしてみた。 - Affamative Way