skillup

技術ブログ

PHP

PHPでのコンソール入力に関して

投稿日:2015年10月19日 更新日:

PHPはほとんどの場合、ブラウザでURLをたたいてWEBサーバーから呼び出されるパターンがほとんどです。

ところが、コンソールから使いたい場合などもあるでしょう。

コンソールから入力する場合、なんらかの引数を入力するとなると、標準入力を使って対話形式で読み込む方法と引数を直接渡す方法があります。

プログラム自体はものすごくシンプルなのでリンクの紹介をします。

標準入力の場合

PHPで標準入力を行う方法

PHPで標準入力

注意点としては何度も読み込む場合はwhileなどでループさせましょう。

ループ回数と出力メッセージタイミングをそろえるのが意外と難しい・・・

引数を使用する場合

PHPでコマンドライン実行時のパラメータ(引数)取得 - $argv、$argc

注意点としては

インデックスが1からスタート

$argvはインデックスが0ではなく1から始まります。

区切り

引数は半角スペースで自動的に区切られます。

sample.php  hoge  foo

とした時点で$argv[1]=hoge , $argv[2]=fooになります。

引数を入力するときはクオートを付けると1つの引数とみなされます。

sample.php  ”hoge  foo ”とやってしまうと $argv[1]=”hoge foo” になってしまいます。

-PHP

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

CakePHPでのプレフィックスルーティング

cakePHPではルーティングがデフォルトでは/コントローラ名/アクション名となります。 ところが管理画面などはadmin/コントローラー名/アクション名などと変則的なURLにしたいことも多いでしょう …

no image

HTMLの画像化について

7月にHTMLを画像化する処理なんてものをやりました。 コード自体は複雑なことはなかったんですが、新規で覚えることがそこそこあったので、メモしておきます。 Contents1 html2canvas1 …

no image

CakePHP3 Csvプラグイン

cakePHPでのCSVダウンロードプラグインを実装 Contents1 インストール2 プログラム3 注意点4 参考 インストール composer.jsonに下記のように書いてcomposer u …

no image

CakePHP2系でのテスト処理

cakePHP2系でのテストの処理について。 PHPでのテストといえばphpunitが有名かと思います。cakePHPでも標準でphpunitがはいっており、ユニットテストを行うことができます。 Co …

no image

CakePHPでの数字カンマ区切り&PHP&MySQL曜日の出力

今回は主に時間やお金の表示など、出力に関するネタです。 Contents1 Cakeでのカンマ区切り1.1 単純なカンマ区切り 例1,0001.2 \をつけるケース 例 \1,0001.3 円をつける …

アーカイブ