Build the future of communications.
Start building for free
  • By Matthew Setter
    Javaで環境変数を設定する方法 Javaで環境変数を設定する方法

    この記事はMatthew Setterこちらで公開した記事(英語)を日本語化したものです。

    環境変数は、データベースやキャッシュサーバー、サードパーティーのAPIなど、コードに明示的に設定を保存することなくJavaアプリケーションを構成するための優れた方法です。

    このような設定をコードの外に保管しておくことには、いくつかの利点があります。

    • 設定変更時のコードの更新や再コンパイルが不要になります。
    • ユーザー名やパスワード、デプロイメントトークンなどの機密情報の漏洩を防止します。
    • 同じコードを複数の環境にデプロイできます。

    本稿では、Javaで環境変数を扱う方法をご紹介します。

    Javaで環境変数にアクセスする方法

    最も一般的な方法は、System.getenv()を使う方法です。System.getenv()は任意の引数として、Stringを受け取ります。引数が渡されたかどうかによって、このメソッドから返される値が異なります。

    Stringが渡され、内部環境のMapのキーと一致する場合、そのキーに対応する値が返されます。 一致するキーがなければ、nullが返されます。引数が渡されない場合、すべての環境変数とその値を含む読み出し専用のjava.util.Mapが返されます。Mapのキーは環境変数名で、値は環境変数の値です。

    UNIX、Linux、macOSでは、環境変数は大文字と小文字を区別しますが、Microsoft Windowsでは、大文字と小文字を区別しません。

    以下に、このメソッドを使って、ユーザーのシェルを含むLinu …

    Read More
  • By Matthew Setter
    Umgebungsvariablen in Java verwenden Arbeiten mit Umgebungsvariablen in Java

    Umgebungsvariablen sind eine hervorragende Möglichkeit, Java-Anwendungen zu konfigurieren, ohne Einstellungen explizit in Code speichern zu müssen, z. B. für Datenbank- und Caching-Server oder für APIs von Drittanbietern.

    Solche Einstellungen außerhalb des Codes vorzunehmen hat mehrere eindeutige Vorteile:

    • Bei Änderungen der Einstellungen muss der Code nicht aktualisiert und erneut kompiliert werden.
    • Die Offenlegung sensibler Anmeldeinformationen wie Benutzernamen und Passwörter sowie von Tokens wird verhindert.
    • Derselbe Code kann in mehreren Umgebungen bereitgestellt werden.

    In diesem kurzen Artikel werde ich Ihnen einige der Möglichkeiten zeigen, wie Sie mit Umgebungsvariablen in Java arbeiten können.

    Zugriff auf Umgebungsvariablen in Java

    Eine der häufigsten Methoden ist die Verwendung von System.getenv(), die ein optionales Argument des Typs String akzeptiert. Je nachdem, ob ein Argument des Typs Stringübergeben wird, werden unterschiedliche Werte von der Methode zurückgegeben. Genauer:

    Wenn ein String übergeben wird und er mit einem Schlüssel in der Map der internen Umgebung übereinstimmt, wird dessen …

    Read More
  • By Matthew Setter
    PHPで環境変数を使用する方法 PHPで環境変数を使用する方法

    この記事はMatthew Setterこちらで公開した記事(英語)を日本語化したものです。

    環境変数は、PHPアプリケーションを構築する上で非常に便利なツールです。環境変数を使えば、アプリケーションの設定をコード外に保管できます。コード外に保管することで、認証情報の漏洩を防いだり、 アプリケーションを効率的にメンテナンスしたり、複数の環境にわたってアプリケーションを使用することが容易になります。

    本稿では、PHPアプリケーションでの環境変数の設定や取得をするための方法をご紹介します。アプリケーションでAPIキー、アップロードされたファイル、クエリ文字列、フォームデータなどの情報を環境変数としてアクセスできるようになります。

    PHPで環境変数にアクセスする方法

    PHPのスーパーグローバル変数を使用する

    PHPで環境変数にアクセスする最も一般的な方法のひとつが、スーパーグローバル変数を使用することです。スーパーグローバル変数は組み込みの定義済み変数で、すべてのスコープで利用可能です。PHPランタイムによって初期化され、PHPの環境情報を論理的かつ効率的に整理し、必要な情報を取得するためにひとつの配列を参照するだけでよいようにします。

    例えば、$_SERVERにはリクエストヘッダー、パス、スクリプトの場所が含まれ、 $_SESSIONにはセッション変数が含まれます。また、$_POSTにはHTTP POSTメソッドで呼ばれたときに現在のスクリプトに渡される変数が含まれます。

    スーパーグローバル変数の使用にあたって、注意点もあります。

    Read More
  • By Matthew Setter
    Improve PHP Web App Performance Using Memcached Improve PHP Web App Performance Using Memcached

    In the first part of this series, I stepped through how to create a Markdown-powered blog in PHP using the Slim Framework. In this, the second part in the series, you're going to learn how to use Memcached with PHP to improve the application's performance.

    Let's begin!

    Prerequisites

    You need the following to follow this tutorial:

    Why use caching?

    While the initial version works perfectly well, its performance would peak reasonably quickly, because — on every request — the blog data is aggregated from a collection of Markdown files with YAML frontmatter in the application's filesystem, parsing out the article data before the blog data can …

    Read More
  • By Matthew Setter
    Build Your Own Weather Station With PHP, Python and a Raspberry Pi Build your own weather station with PHP, Python and a Raspberry Pi

    Raspberry Pi, Arduino, BeagleBone, and similar technologies have had a revolutionary impact on so many people around the world.

    Because they provide the building blocks of computing for a very low price, anyone, from a school student to a retiree, with a little bit of time and effort, can build a device that perfectly scratches whatever itch they have. They no longer need to wait for a commercial organisation to build it.

    One such itch (at least one that I have) is to measure the current temperature and humidity throughout the rooms in my home. Sure, weather app's can tell you the current temperature and humidity, however, they can only do it for a wide geographical area.

    So, in this tutorial, you're going to learn how to create a small weather station with a Raspberry Pi, some PHP and Python code, and a temperature and humidity sensor — for …

    Read More
  • By Matthew Setter
    PHPでQRコードを作成する方法 Copy of C02 Blog Text (5).png

    この記事はMatthew Setterこちらで公開した記事(英語)を日本語化したものです。

    QRコードは現代の生活のあらゆる場面で使われています。

    QRコードは小さく、専用のソフトウェアなしであらゆるスマートフォンで読み取ることができるため、カフェの会計、WiFiネットワークのアクセス、買い物などの処理を素早く簡単に行うことができます。

    本稿では、PHPベースのアプリケーションでQRコードを作成する方法をご紹介します。

    必要条件

    このチュートリアルでは、以下の項目が必要です。

    • PHPの基礎知識。
    • GD拡張機能がインストールされているPHP 7.4。
    • グローバルにインストールされたComposer
    • スマートフォン。

    PHPでQRコードを作成する

    まず、使用するすべてのファイルを保存するためのプロジェクトディレクトリ構造を作成します。最上位のディレクトリに切り替え、次のコマンドを実行します。

    mkdir -p php-qr-code-generator \
        php-qr-code-generator/src/QR/{Image,Options} \
        php-qr-code-generator/public/img
      
    cd php-qr-code-generator
    

    Microsoft Windowsを使用している場合は、次のコマンドを実行します。

    mkdir php-qr-code-generator
    mkdir php-qr-code-generator/src/QR/Image
    mkd …
    Read More
  • By Matthew Setter
    How to Manage Application Secrets With PHP Using Vault How to Manage Application Secrets With PHP Using Vault

    For far too many years, PHP developers stored application credentials and secrets, such as usernames, passwords, and API keys, alongside their code.

    While extremely convenient, this practice was a security nightmare just waiting to happen; if someone could access an application’s source code, they had access to all of its sensitive data too.

    Nowadays, this practice is nowhere near as common as it once was. Rather, it's now incredibly common to store credentials separately from code in dotenv files (.env) which makes them available as environment variables.

    However, while this is a significant improvement, this practice still isn't the best way to keep credentials and secrets secure. For example, if the .env file is accidentally committed to version control, then the credentials and secrets are once again stored alongside code.

    Alternatively, if a malicious actor can access the environment where an application is running from, they can access …

    Read More
  • By Matthew Setter
    Send Scheduled SMS with PHP and Twilio Programmable Messaging Send Scheduled SMS with PHP and Twilio Programmable Messaging

    Twilio Programmable Messaging lets you send SMS, MMS, and WhatsApp messages. However, up until recently, it didn't support scheduling messages for a future date and time. If you wanted to do that, you had to roll that functionality yourself, likely using a Cron job, or some scheduling tool, to retrieve stored messages from a database, and create them when they needed to be sent.

    Now, though, you can schedule SMS messages with a single API call using Message Scheduling!

    In this tutorial, you’ll learn how to schedule SMS ahead of time using PHP. To make the tutorial a little more meaningful, assume that you are writing the code to help remind people about upcoming meetings of the local club that you're a member of.

    Tutorial Requirements

    You will need these items to follow along with this tutorial:

    • PHP 7.4 (ideally 8.1)
    • Composer installed globally
    • A free or paid Twilio …
    Read More
  • By Matthew Setter
    How to Create a Markdown Blog in PHP With the Slim Framework How to Create a Markdown Blog in PHP With the Slim Framework

    When it comes to blogging software, you're not starved for choice. However, despite this choice and how feature-rich modern blogging software is, are the available options necessarily the right choice?

    Sure, software such as WordPress, Ghost, Gatsby, and Wix are very feature-rich — and their UIs are often very smooth. But do you want the hassle of installing, configuring, and securing them on top of writing your blog content? What's more, can you justify the budget that some blogging software requires?

    Maybe, all you want to do is to write your site's content using your preferred editor, using a simple format designed for writing for the web, Markdown, rather than through a user interface.

    If that’s the case, then in this tutorial, I’m going to show you how to create a blog that draws its content from Markdown files. The blog uses the Slim Framework (version 4), the Standard PHP …

    Read More
  • By Matthew Setter
    PHPでHTTPリクエストを実行する5つの方法 PHPでHTTPリクエストを実行する5つの方法

    この記事はMatthew Setterこちらで公開した記事(英語)を日本語化したものです。

    HTTPリクエストは、特にPHPにおいて、最新のWebベースのアプリケーションを特徴付けるものです。開発者は、Google Cloud、Facebook、AWSなど、あらゆる種類の外部サービスやAPIを頻繁に操作する必要があります。極端に言えば、HTTPリクエストは、PHPの基礎の習得後に開発者が最初に学ぶことの1つになるかもしれません。少なくとも私の場合はそうでした。

    そうは言うものの、最新の多くのソフトウェア開発言語と同様に、PHPでHTTPリクエストを実行する方法は複数あります。本稿では、PHPでHTTPリクエストを実行するための5つの方法を紹介します。加えて、それらの使用方法と、それぞれの長所と短所について説明します。詳細を説明するというよりは、それぞれについて広義に紹介していきます。

    本稿で紹介するHTTPリクエストの実行方法は次のとおりです。

    それぞれの方法で、FlickrのAPIを使用し、以下のようなオーストラリアのカカドゥ国立公園の画像を10枚ダウンロードします。

    オーストラリアのカカドゥ国立公園画像

    カカドゥ国立公園のイエロー・ウォーター・ビラボンに沈む夕日、オーストラリア、ノーザンテリトリー州”(Geoff Whalan氏撮影CC BY-NC-ND 2.0に基づく掲載許可)

    必要条件

    チュートリアルを完了するには、以下の項目が必要 …

    Read More
  • Newer
    Older
    Sign up and start building
    Not ready yet? Talk to an expert.