タグ

関連タグで絞り込む (211)

タグの絞り込みを解除

phpに関するsatopianのブックマーク (145)

  • PHP:file_get_contents()でPOSTする

    こんにちは、さるまりんです。 PHPでサーバーにデータをPOSTで送信しようと思いまして。 file_get_contents()でPOSTする 以下のように行います。 $url = '送り先URL'; $data = []; // $dataに送るデータを詰めます。 $data['name'] = 'salumarine'; $data['type'] = 'monkey'; // 送信データをURLエンコード。 $data = http_build_query($data, "", "&"); // これを指定しないと動かない? $header = [ "Content-Type: application/x-www-form-urlencoded", "Content-Length: ".strlen($data) ]; // 送信の準備(ストリームを作る) $options =[

    PHP:file_get_contents()でPOSTする
    satopian
    satopian 2023/12/14
  • PHP 8.3の新機能(+非推奨機能と変更点)

    PHP8.3が予定通り11月23日にリリースされました。前回のPHP 8.2のリリースから、多くの新機能と改善点が盛り込まれています。公式にはマイナーリリースとなりますが、中には日々のワークフローに直接影響するような変更点も。 PHP 8.3注目の新機能と大小含めたさまざまな変更点をご紹介していきます。 型付きクラス定数 PHP 7.4でクラスのプロパティの型を宣言する機能が導入されて以降、この型付けは何年にもわたって改善されてきたにもかかわらず、これまで定数には適用されていませんでした。 PHP8.3では、クラス定数(インターフェース、トレイト、列挙型も含む)にも型が書けるように。これによって、意図した最初の宣言からずれにくくなります。 以下は、インターフェースを使用した簡単な例です。 // 良い例 interface ConstTest { // 宣言された型と値は両方とも文字列 co

    PHP 8.3の新機能(+非推奨機能と変更点)
  • PHPでffmpegを使わずに動画ファイルのサムネイルを作成する | 株式会社ケイツー

    簡単な画像データベースを作ったときのことです。 データベースの仕様は、 PHP+Mysqlで作成する。 画像・動画ファイルがサーバにアップできる。 カテゴリー別に分けることができて、ファイル名やタグ情報で検索ができる。 iPhoneで撮影したビデオをアップロードしてサムネイルでリスト表示させようとしたのですが、 レンタルサーバなのでffmpegがインストールできないため、 html5のcanvas機能を使いサムネイル画像を表示させて、 JavaScriptでサーバにアップロードしました。 <video id="vid" controls autoplay> <source src="".$imagename.""> </video></br> Canvas:<span id="image_file_name"></span></br> <canvas id="mycanvas"></can

  • サイトURLから.htmlや.phpなどの拡張子を非表示にする方法 | Free Style

    Webサイトの各ページのURLの末尾にある拡張子。表示があったり表示がないWebページがあったり気になったことはあるでしょう。 Webに詳しい方は、どの言語でどのように作られているかがだいたい想像できますが、この拡張子は特に表示させる必要がないのであれば、表示させなくてもいいでしょう。 拡張子の表示をなくすことで、WebページのURLを短くスッキリさせることができます。 また、Webページがどのように作られたのかが閲覧者にわかってしまうので、気になる方は非表示にすると良いでしょう。 他、拡張子を判別して処理をするようなプログラムがないのであれば。。。 WordPressなどのCMSでは、すでに拡張子が表示されないように設定がされていることが多いですが、別でWeb制作を行う場合は設定が必要となります。 ランディングページなどで特に頻繁に更新するコンテンツがなければ、WordPressで構築す

    サイトURLから.htmlや.phpなどの拡張子を非表示にする方法 | Free Style
    satopian
    satopian 2023/08/16
    “Free”
  • 配列の指定した場所に値を追加する | GRAYCODE PHPプログラミング

    array_splice関数を使って、配列の任意の場所に要素を追加する方法について解説します。 この記事のポイント 配列の好きな場所に要素を追加することができる 連想配列に要素を追加する時は配列のキーに一工夫必要 配列の途中に要素を追加する array_splice関数を使うと、配列の任意の場所に要素を追加することができます。 コード例 array_splice( $array, 2, 0, '追加する要素'); パラメータが少し多いですが、前から1つ目のパラメータは要素を追加する配列、2つ目は追加する位置、3つ目は置き換える要素数、4つ目が追加する要素の内容になります。 言葉だけだと分かりづらいため、実際にコードで動作をみていきましょう。 array_splice関数は配列の要素を置き換えるときにも使用するため3つ目のパラメータが必要なこともありますが、今回は置き換えではなく追加のみなの

    配列の指定した場所に値を追加する | GRAYCODE PHPプログラミング
  • PictPostPersonal Simple Blog System 配布サイト - 更新履歴 & 更新方法

    設定画面右上の「管理ツール」から自動更新が行えます。 バージョンアップ実施前に、念のためバックアップを取得してください。 ※手動でファイルを差し替えた場合、「(URL)/update.php」にアクセスしてアップデートを完了してください。 ※ルートにある「templates」ディレクトリ内のファイルもアップデート時に上書きされてしまいます。 templateを独自にカスタマイズしたい場合はenvディレクトリ内にtemplatesディレクトリをコピーし、その中で編集を行ってください。

  • PHP8系へのJITコンパイラ導入方法&処理速度を検証(小話52) | オタク総研

    PHP8.0からJITPHP言語機能として実装され、理論上大幅な速度向上を達成したとの事なので超今更ですが実際にコードを書いて実際に検証してみました。 ※実装・速度検証をすぐご覧になりたければ↓目次からどうぞ [temp id=6] JITを導入しよう OPcache・JITコンパイラとは ほんの少しだけ用語解説。QiitaやZenn・DEVとかに詳しい解説があるので是非ご覧あれ。 PHP来インタプリタ型言語としてopcodeに変換して処理されますが、OPcacheを使うことでメモリ内に保存されて次リクエスト時に変換を不要にして高速化を図るというものです。(「キャッシュ」という語が含まれている通り) ※opcodeは.NET Frameworkの中間言語「IL」的なポジション JITは”Just In Time”の略でJITコンパイラを使えば、ネイティブコード(機械語)まで一気に変換

    PHP8系へのJITコンパイラ導入方法&処理速度を検証(小話52) | オタク総研
  • サイトを37倍に高速化した7つの手法 - オールアバウトTech Blog

    今回はオールアバウトのnnmrが弊社サイトAll About Japanの速度を高速化した経緯についてまとめます。 All About Japanとは そもそもAll About Japan(以下AAJ)とは何かといいますと、弊社が提供している訪日外国人向けの日紹介サイトです。 外国人向けサイトで、英語中国語(繁体字)、中国語(簡体字)、タイ語、韓国語の5か国語に対応しております。 「Anime」「Izakaya」「Ninja」といったような特集や、実際に観光する人向けのモデルルート記事が特色です。 ■ 特集 (url : http://allabout-japan.com/en/tag/sushi/ ) ■ モデルルート記事 (url : http://allabout-japan.com/en/article/222/ ) 技術的な紹介 LAMP環境です。 (サーバー構成は後に記述

    サイトを37倍に高速化した7つの手法 - オールアバウトTech Blog
  • PHP: stream_context_create - 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: stream_context_create - Manual
  • PHP で大きいJPEGやPNGファイルをPHPで扱うときのメモリエラー回避方法 | Sun Limited Mt.

    GD でメモリエラー に書かれているように GD で JPEG や PNG の大きな画像を扱うときに Fatal error: Allowed memory size of 16777216 bytes exhausted (tried to allocate 11648 bytes) in ...というようなエラーが出てしまいます。 上のエラーがは私が EOS5D で撮影した 2912×4368とかなり大きな画像です。 大きさで制限するのも一つの方法ですが、どうしても大きな画像を取り込みリサイズしなければいけないときなどのために以下の方法もあります。 PHP: imagecreatefromjpeg – Manual PHP に割り当てられているメモリの範囲で必要なメモリを計算して ini_set('memory_limit', 'xxM')と設定しれくれます。 function set

  • PHP + GD で大きな画像を処理する際のメモリ不足対策

    どうも。 ウェブサイトのイラストライブラリを作り続けています。 ここではPHPを利用して大きな画像を加工してサムネイルを自動生成するプログラムを作っているのですが、 大きなサイズだとメモリが足りずエラーが吐き出されてしまうわけです。 (ここでは imagecreatefromjpeg() で発生しています) 設定ファイルのmemory_limitを手作業で増やしてもいいのですが、 折角なのでプログラム内で調整できるようにしたいな~と思って、リファレンスのこの記事を見つけました。 http://php.net/manual/ja/function.imagecreatefromjpeg.php#64155 内容としては getimagesize() で画像の情報を取得して必要メモリを計算後、 設定ファイルで指定しているメモリ容量より大きければ再設定してやる、といった内容かと思います。 ($m

  • 大規模PHP開発で欠かせないアクセス修飾子とカプセル化、アクセサー、コンストラクター/デストラクター

    コンストラクター/デストラクター インスタンスが作成されるときに自動的に走るメソッドとして「コンストラクター」というメソッドが、多くの言語に存在します。PHPにも、この「コンストラクター」が存在します。 まずは実際にコードを書いて、コンストラクターの存在を確認してみます。 <?php class hoge { public function __construct() { echo "run constructor\n"; } } // $obj = new hoge(); __constructメソッドは、明示的には呼ばれていません。しかし「newされたタイミング」で自動で呼び出されます。その証左として、上述プログラムを動かすと「__constructメソッドをcallしていないのに、__constructメソッドが呼ばれている」様子が分かるかと思います。 また、コンストラクターと対にな

    大規模PHP開発で欠かせないアクセス修飾子とカプセル化、アクセサー、コンストラクター/デストラクター
  • PHPにおけるオブジェクト指向とは?クラスやインスタンスについても解説! - TECH PLAY Magazine

    PHPで複雑な処理を行うプログラムを記述する場合、クラスを使うことがあります。クラスはいくつかの機能がまとまったもので、オブジェクト指向プログラミングにおいては欠かせられない存在です。オブジェクト指向の基を解説していきますので、クラスの定義方法やインスタンス化の方法、またオブジェクト指向で記述する意味なども理解していきましょう。 PHPを使って高度なアプリなどを構築していく場合にはクラスを使うことになるでしょう。そしてこの場合、インスタンスやメソッド、プロパティといったものを理解しておかなければなりません。 ここではまず、オブジェクト指向とは何かということを説明、クラスなどの具体的な使い方についても解説していきます。 オブジェクト指向はPHPに限らないプログラミングの手法 オブジェクト指向とはプログラムを機能ごとにまとめて作成していくことを言い、この手法でプログラミングを行うのはPHP

    PHPにおけるオブジェクト指向とは?クラスやインスタンスについても解説! - TECH PLAY Magazine
  • 古いPHPでHTTPヘッダインジェクションを再現

    はじめに HTTPヘッダインジェクションの理解を深めるために普段使っているPHPで動きを再現しようとしたのですが、思うように動かず、、。 調べてみると、バージョン5台で対策されており、現在メンテナンスされてるバージョンでは再現しないようです。 PHPにおけるHTTPヘッダインジェクションの対応は、以下のページを参考にしていただくと良いかと思います。 修正によってheader()を使用して、1回の呼び出しで複数の応答ヘッダーを送信できなくなっているようです。 記事ではバージョン5以前のPHPを用意してHTTPヘッダインジェクションを再現してみます。 そもそもHTTPヘッダインジェクションとは HTTPヘッダインジェクションの概要は以下のページなどがわかりやすいです。 HTTPヘッダ・インジェクションの脆弱性とは、任意のレスポンスヘッダフィールドやレスポンスボディを作成する罠が仕掛けられ、こ

    古いPHPでHTTPヘッダインジェクションを再現
  • PHP 8.1: GD: AVIF image support

    satopian
    satopian 2023/02/21
  • 【初心者向け】PHPがブラウザで正しく表示されない時の対処【EC2インスタンス】 | 株式会社NONAME Produce(n2p)|デジタルプロモーション企画・制作

    早いもので入社してから1年が経ちます。でもまだまだ未熟ですLV的には5くらいです。 この記事シリーズ(?)のはじめに掲げてた目標は達成しています。二ヶ月ほど前に。 最後の方はもう駆け足だったし、ちょっとした問題も多々ありましたし、その辺も忘れないようにいずれ書けたらと思っています。 この記事は書き溜めしてたんですが、存在を忘れていたものです。今にして思えば、こんなことで詰まってたんだと思いますが、当時はとにかくわからないことだらけだし、自分で調べ るしかないし、調べ方のコツみたいなのもよくわからなかったから大変でした。同じように困ってる人に見てもらえたらと思います。 『今回やること』 前回は権限の話、MySQLPHP関連のライブラリのインストール、ライブラリとモジュールやその他の違いについて書きました。 今回は、Webページの方に戻って、サイトデータをサーバーにアップした際にPHPのペー

    【初心者向け】PHPがブラウザで正しく表示されない時の対処【EC2インスタンス】 | 株式会社NONAME Produce(n2p)|デジタルプロモーション企画・制作
  • 【PHP応用】 プロパティ | TECH PROjin

    この記事では、プロパティについて、 以下の3点を説明します。 1.プロパティはオブジェクトのメンバ変数。 2.public,protected,privateのアクセス修飾子を指定する。 3.staticキーワードをつけると、インスタンス化せずに使うことができる。 プロパティとは オブジェクトのメンバ変数です。 「人間」クラスのプロパティは 「名前」「体重」「身長」などが考えられます。 ★他の例も考えてみましょう。 プロパティへのアクセス方法 オブジェクトのプロパティへアクセスする構文 オブジェクト変数->プロパティ名; ハイフンと大なり記号を組み合わせた 矢印(arrow)のような形をした「アロー演算子」を用いて、 オブジェクト内のプロパティにアクセスできます。 ※後に出てきますが、アクセスできることが条件になります。 ※JavaPythonなどと違い、ドット演算子ではアクセスできませ

  • PHP: $http_response_header - 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: $http_response_header - Manual
  • PHPで作る掲示板のような追記形メモ

    PHPで作る掲示板のような追記形メモ 目次 はじめに 入力した見出しと記事を画面に付け加えて行くPHPプログラムを作ります。 サーバーへ入力した文字列をPOSTで送信し、formで指定するページに遷移します(つまり新しいページをサーバーに要求します)。サーバーでは新しいページに書かれているphpプログラムに沿って送られてきた文字列をファイルに追加保存します。さらにプログラムに沿ってそのファイルを読み直し、ページを作成してクライアントに送ります。クライアントのブラウザはページを表示します。 今回のプログラムでは、送信するページと、遷移するページは同じファイルなので混乱しないように。 ログファイルと出力ファイルの設定 まず、エラー表示とログの設定をします。 また、エラーログと同じフォルダに、入力されたデータを保存するファイルも作ることにします。 <?php ini_set('display_e

    satopian
    satopian 2023/01/26
    “最近不正な文字コードを送りつけて、負荷をかけたり誤動作をさせるという攻撃”
  • 【Labs】JavaScriptで取得した値をPHPに渡す

    6月更新・前月(5月)の人気記事トップ10 06/06/2024 ( 02 ↑) 【Labs】position:absoluteとwidth:100%を指定すると横幅の設定がうまくいかない場合の対処方法について ( 01 ↓) 【MacmacOSをHigh SierraからMontereyにアップグレード ( 03 – ) 【Mac】Safariでソースコードを見る方法 ( 04 – ) 【jQuery】入門2. jQueryをHTMLに組み込む ( 05 – ) 【Mac】横画面で撮影した動画をYouTubeショート用にMacのiMovieで縦画面に編集する方法 ( 08 ↑) 【Labs】CSSだけでドロップダウンメニュー ( 09 ↑) 【Labs】PHPのエラー表示をなくす方法 ( 06 ↓) 【iPhone / iPadiPhoneのツイッターアプリでユーザー名をコピーする方

    【Labs】JavaScriptで取得した値をPHPに渡す