侍エンジニア塾ブログにあったPHPコードをシンプルに書いてみる(foreachで配列キーや値取得・continueで空要素スキップ)

      2021/02/25   1607文字

侍エンジニア塾ブログにあったPHPコードをシンプルに書いてみる(foreachで配列キーや値取得・continueで空要素スキップ)

今回は、(自分もまだプログラム学習中の身ですが)よくある『プログラム学習サイト』のコードをシンプルにカスタマイズしてみます。

プログラム学習サイトは便利ですが、『コードが間違っている・より適切な表記があるかもしれない』などの難点もあるので、自分でカスタマイズできると良さそうです。管理人もさっそくやってみました。

プログラム学習サイトの難点とは?

全部が全部というわけではありませんが、例えば大手の「侍エンジニア塾」では、『DMCA申請や虚偽表示』で最近炎上した以外にも、ブログ内容にも、批判があつまったりしていました。

大部分は『コードが間違っていることがある・表記が適切じゃない』『検索の邪魔』『サイト自体見にくい』などのようです。管理人も、他のサイトでコードをまんまコピペしたら、シンタックスエラーが混ざっていたことがあったので(エラー表示&ワードプレスが真っ白になった・直したけど)、『自分でカスタマイズして直せるとベスト』かなと思います。

foreachで配列キーや値取得ってどうなるの?

今回は侍エンジニア塾にあったコードをシンプルにしてみます。題材はPHP『foreachで配列キーや値取得・continueで空要素スキップ』ですが、foreachで配列キーや値取得とやると、こんな感じで書きます。

ワードプレスのフッターに書いて出力させてみます。$fruits1という名前の配列にいろいろなフルーツの名前が入っています。これをechoで出力してみるんですけど、一箇所空の要素が入っています。


foreachをつかって、値となっているフルーツの名前を全部取得して、表示ができました。ただし、空欄になっているところも取得して出力しているので、一箇所あいています。ここをスキップしたいときは、continueで空要素スキップします。

侍エンジニア塾ブログにあったPHPコードをシンプルに書いてみる(foreachで配列キーや値取得・continueで空要素スキップ)

もとのコード

元のコードは侍エンジニアのブログ・continueで空要素スキップというところにあります。
https://www.sejuku.net/blog/22195

単純にコピペしても動作したんですけど、$fruits1があるのに『foreach($fruits2 as $value)』みたいに、配列が2個でてくるのはややこしいかなーと思ったので、$fruits1だけで同じ出力にできないかを検証しました。

シンプルにしてみたコード


GitHub Gistにシンプル化したコードを載せてみました。$fruits2みたいに配列が複数ないので見やすくなったかなと思います。


このコードを、先ほどと同じようにワードプレスのフッターに貼り付けます。


先ほどの空白みたいな部分をスキップし、ブログの出力例にあったものと同じ出力ができました。

あとがき・まとめ

今回はシンプルな例でしたが、よくあるプログラム学習サイトのコードをカスタマイズをしました。単純にコピペだと、万が一コードが間違っていた・エラーがある場合、対処ができなくなってしまうので(実際に、管理人はエラーで表示しなくなったことがあります)、どこが間違っているか、よりよい表記があるのか調べて直す・カスタマイズするなどできると、より活用できるかと思います。

WordPressサイト制作&リニューアル・機能開発サービス | アトリエSS


【カテゴリ】 - PHP・データベースetc
【タグ】 -

  関連記事

【PHP】GD関数『imagewebp』でのWebP変換方法&使えないポイント
【WPカスタマイズ】プラグイン不使用、テーマに関連記事表示機能を実装しPV・滞在時間を上げる
PHP・mb_substr関数を使って、タイトル文字数を揃える(WPレイアウト調整)
【PHPプログラミング】メモ帳に適当にメモったPV数値をexplodeで配列にし、array_sumで合計値を計算する
【WP記事取得クエリ・プラグイン無し】お知らせなどに使える、ショートコードで特定カテゴリ記事を表示プログラム
PHP・shuffleやarrayを使った、画像ランダム表示方法~メインビジュアルやバナー・テキストにも利用可能
【WordPress組み込み関数】is_home()とis_front_page()って同じ?→似てますが、厳密には挙動が異なります
【WordPressカスタムフィールド検索】meta_queryで、シリアライズ値が入ったフィールドを持つ記事をヒットさせるには?
テスト環境(ローカル含む)でPHPサイト開発に使えるツール&xamppでやってみた例(設定や表示ファイルetc)
【WordPress更新情報表示】php/wp組み込みファンクション(fetch_feed)で取得と、プラグインで表示どちらが良い?
【WPユーザー名バレ対策】ユーザー名表示からPHP・preg_matchでリダイレクト(wp-json/wp/v2/usersなど)
【超危険】WordPressデータベースリビジョンお掃除