不惑にしてまだ何者でもない者のブログ

Arduino関連、Raspberry Pi関連、プログラミング学習

paizaラーニング『 PHP入門編4:配列の基礎、explodeを学ぶ (全8回) 』を受講してみた

2020-10-26 21:53:29 | paiza
次は配列らしい


PHP入門編4:配列の基礎、explodeを学ぶ (全8回)

01:配列の概念

  • 配列には、keyとvalueがある
  • 配列は順番を管理したり、並べ替えたり、追加したりするのに便利
  • 配列の使いどころ
    • 並び順管理が必要なデータ処理
    • エクセルのような複数業のデータ処理
    • フォーム等の選択肢の管理(性別、都道府県、etc)
    • 座席の空席管理
    • CSVデータの処理(二次元配列、連想配列)
    • 将棋のような盤面の表現(二次元配列)

02:配列の基本操作1

  • 配列への代入のしかた
$配列名 = array(要素1, 要素2, 要素3…);
  • print_r()関数:指定した配列、変数に関する情報をわかりやすく出力
    • echoでは配列を出力できない

03:配列の基本操作2

  • 要素の追加方法
    $array[] = 追加したい要素;
  • 要素の上書き方法
    $array[上書きしたい要素のキー番号] = 上書きしたい内容;
  • 要素の削除方法
    unset($array[削除したい要素のキー番号]);

04:explodeで文字列を分割 

  • explode関数の使い方
    • $配列名 = explode("分割する区切り文字", 分割したい文字列);
      カンマで区切られたCSVデータのような、特定の区切り文字で区切られた文字列を分割して配列に代入する関数
  • count() 関数
    配列に含まれるすべての要素の数を数える。

05:配列にデータを格納してみよう1

  • while文を使った標準入力の繰り返し読み込み
$input  = trim(fgets(STDIN));
while($input){
 // 繰り返し実行する処理
 $array[] = $input
 $input  = trim(fgets(STDIN));
}

06:配列にデータを格納してみよう2

  • 上述の方法だと空行があると終了してしまうという問題がある
  • 改良版
$input  = fgets(STDIN);
while($input){
 // 繰り返し実行する処理
 $array[] = trim($input)
 $input  = fgets(STDIN);
}
  • 改良版(より洗練)
while($input = fgets(STDIN)){
 $array[] = trim($input);
}

07:配列を使ったランダムくじ引き

  • rand()関数の範囲を動的に変化させる

08:配列を使ったランダムくじ引き 補足

  • 配列の要素数とインデックスの最大値が一致しないことの解説
    • インデックスが0から始まるから最大インデックスは要素数-1

感想

PHPではexplodeを使えば、簡単に文字列分割できることがわかった。

paizaラーニング『PHP入門編3: ループ処理を学ぶ (全6回) 』を受講してみた

2020-10-26 14:34:35 | paiza
次は、『PHP入門編3: ループ処理を学ぶ (全6回) 』


PHP入門編3: ループ処理を学ぶ (全6回)

01:データの読み込み(標準入力)

  • Webページ
  • データベース
  • ファイルシステム
  • 標準入力

02:データの読み込み(標準入力)2

  • fgets()関数:ファイルポインタから1行取得する
    • fgets(STDIN) で標準入力で与えられたデータを1行取得する事ができる
  • trim()関数:文字列の先頭および末尾にあるホワイトスペースを取り除く

03:while文でループ処理1

  • while文の書き方
while(条件式){
 // 繰り返し実行する処理
}

04:while文でループ処理2

  • HTMLの中にPHPを書く

05:for文でループをスマートに

  • for文の書き方
for(初期化式; 条件式; 変化式){
 // 繰り返し実行する処理
}

06:西暦年と平成年の対応表を作る

  • 平成元年の1989年〜2015年までをループで出力
  • 平成年=西暦-1988

感想

とりあえず認定証取得。

paizaラーニング『PHP入門編2: 条件によって処理を変えてみよう (全6回) 』を受講してみた

2020-10-25 23:16:24 | paiza
はい、次


PHP入門編2: 条件によって処理を変えてみよう (全6回)

01:IF文による条件分岐

  • if文の書式
if(条件式){
 // 条件式が成り立った時の処理
}else{
 // 条件式が成り立たなかった時の処理
}

02:複数の条件分岐

  • elseif文の書式
if(条件式1){
 // 条件式1が成り立った時の処理
}elseif(条件式2){
 // 条件式2が成り立った時の処理
}else{
 // 条件式が成り立たなかった時の処理
}

03:比較演算子でかしこい条件分岐

  • ==:右辺と左辺が等しい
  • >:右辺よりも左辺の方が大きい
  • <:右辺よりも左辺の方が小さい
  • >=:左辺が右辺以上
  • <=:左辺が右辺以下
  • !=:左辺と右辺が等しくない

04:おみくじを作ってみよう

  • IF文とランダム関数rand()の組み合わせ

05:RPGのクリティカルヒットを再現

  • 同上

06:今、平成何年?を計算する

  • date()関数:ローカル(プログラム実行環境)の日付/時刻を書式化する
  • 西暦→昭和(1926〜1988):西暦-1925
  • 西暦→平成(1989〜2018):西暦-1988
  • 西暦→令和(2019〜):西暦-2018

感想

明治や大正も必要かな?

paizaラーニング『PHP入門編1: PHPをはじめよう (全8回) 』を受講してみた

2020-10-25 23:16:24 | paiza
Linuxの勉強をしていたから、少し間が空いてしまったが、paizaラーニングを進めていこう。
今回から『PHP入門編 (全10レッスン) 』を始める。
PHPはほぼ未経験だし、なかなかのボリュームだから、ちょっと手強いかも。
兎に角『PHP入門編1: PHPをはじめよう (全8回) 』から受講してみる。


PHP入門編1: PHPをはじめよう (全8回)

01:PHPとは?

  • 動的なWebページの実現を目的としたプログラミング言語
    • 動的なWebページ:WebサービスやWebアプリケーションのこと
  • PHPで何ができるか?
    • ブログやSNS、ポータルサイト、ECなど

02:PHPプログラムを書いてみよう

  • 開始タグ(<?php)と終了タグ(?>)で囲まれた部分がPHPとして実行される
  • echoが文字列や数字を画面に出力する命令
  • phpでは、行末に;(セミコロン)を入れる

03:コメントをつけてコードを見やすく!

  • // で、その行のそれ以降の文字列をコメントアウトできる
  • 複数行コメントアウトする場合は /* でコメント開始、 */ でコメント終了

04:PHPと HTMLの共存

  • PHPはHTMLのなかに埋め込む事もできる
  • <p></p>や<b></b>など

05:変数を使えるようになろう

  • $ ( ダラー )に続けてアルファベット、数字の文字列で変数を設定できる
  • 変数は . (ドット)でつなげる事ができる

06:サイコロを作る

  • rand() 関数:乱数を生成する関数

07:演算子で計算してみよう

  • 代入演算子 =
  • 代数演算子 + - * /
  • 単項演算子 ++ --

08:値段計算をしてみよう

  • 改行コードの入れ方:バックスラッシュ+n[\n]

感想

まぁまだ、PHPの動的な機能を全然使ってないから、PHPの良さがわからない

LinuC勉強中番外編:シェルで使える代表的なショートカットキー

2020-10-25 11:15:16 | LinuC
LinuCの勉強で合格教本以外に読んでいる本に、シェルで使える代表的なショートカットキーが載っていたので整理する。

 
ショートカットキー機能
Ctrl+J実行(Enterと同じ)
Ctrl+M実行(Enterと同じ)
Ctrl+A行頭へジャンプ(Homeと同じ)
Ctrl+E行末へジャンプ(Endと同じ)
Ctrl+B1文字左へ(←と同じ)
Ctrl+F1文字右へ(→と同じ)
Ctrl+Dカーソルの右1文字を削除(Deleteと同じ)
Ctrl+Hカーソルの左1文字を削除(Backspaceと同じ)
Ctrl+U行頭からカーソルまでカット(Kill)
Ctrl+Kカーソルから行末までカット(Kill)
Ctrl+Yペースト(Yank)
Ctrl+L画面をクリア(clearコマンドと同じ)
Ctrl+P1つ前の履歴を出す(↑と同じ)
Ctrl+N1つ後の履歴を出す(↓と同じ)
Ctrl+R履歴を検索
Ctrl+S画面出力をロック
Ctrl+Q画面出力を再開
Ctrl+C処理の中断
Ctrl+Iコマンド補完(Tabと同じ)

すぐ忘れちゃうのでメモ。 vimのコマンドとも混同しがちだが、実際はEmacs風のショートカットキーらしい。