プログラミング、フリーダイビング、ブロックチェーンのブログ

プログラミング道場

自分の市場価値を知りたい人にオススメの記事です

【すぐできる】エンジニアとしての市場価値を診断してみよう!

目次1 エンジニアが市場価値を把握しておくべき理由2 エンジニアの市場価値を決める要素3 エンジニアにおすすめしたい市場価値診断ツール4 【最後に】正確な市場価値を知るなら転職エージェント エンジニアが市場価値を把握しておくべき理由 エンジ ...

続きを見る

私がオススメするプログラミング教材です

私がおすすめするプログラミング教材のまとめ【書籍】

目次1 これからエンジニアになりたい人へ向けた本2 プログラミング言語3 アプリ開発4 サーバー、インフラ、セキュリティなど5 機械学習系6 ゲーム開発7 データベース8 子供向け9 デザイン10 資格11 組織作り12 自作シリーズ13 ...

続きを見る

【PHP入門】yield構文の使い方を説明します

更新日:

記事の内容


この記事では、PHPのyield構文について説明します。
yieldはジェネレーター関数の一つです。
PHPのバージョンは、7系です。

yieldのメリット

yeildには、以下の2つのメリットがあります。

  • 処理をまとめることができる
  • メモリの節約ができる

では、実際に使い方を見ていきたいと思います。

yieldの使い方

ここでは、「1から3までをループする」という部分を共通化して、yieldにしました。
ここで最初に確認して欲しいことは、処理の流れです。
ジェネレーター関数の中とforeachの中が、交互に実行されているのが、yieldの特徴です。
そして、もう一点、重要なポイントがあります。
このプログラムでは、以下の3つのことを実行していますが、ループを回しているのは一回だけです。
それは、ジェネレーターにより「1から3まで」というループ処理を共通化しているから、できることです。

  • 「1から3まで」を表示する
  • 「1から3まで」に2を掛けて表示する
  • 「1から3まで」を合計する

ジェネレーターを使わないで、同じプログラムを書いた場合は、以下のようなコードになります。
この場合、ループ処理「for」が3回、記述されていることがわかります。

yieldを連想配列にすることもできます。

yieldのメモリ効率を確認

通常のループを使う場合とyieldを使った場合では、メモリの消費量に差がつきます。
配列の中身を順番に処理したい時に、「配列を全て作ってから処理をする」と「配列を作りながら処理をする」という2つの差が出た形です。

配列に保存しようとした値が多すぎて、PHPでエラーが出ます。

yieldを使った場合には、エラーが出ません。

【Python入門】yieldを使って処理をまとめる方法

目次1 1から5までを表示させる処理2 yieldの処理 1から5までを表示させる処理 まずは、普通に以下の関数を実装します。 1から5の数字を表示する関数 1から5の数字を足して、合計を表示する関数 1から5の数字を掛けて、合計を表示する ...

続きを見る

【Ruby入門】ブロック(yield)を使う理由

目次1 1から5までを表示させる2 1から5までループする処理を共通化させる3 yieldを使う4 eachにblockを渡す 1から5までを表示させる 1から5までを表示させる処理は、普通にeachを回しながら表示させる方法でもできるし、 ...

続きを見る

PHPエンジニアの求人

DODA

PHPエンジニアは、約3800件の案件が登録されていました。

PHPを使って働きたい人は、DODAに相談してみて下さい



PHPをより詳しく勉強したい人には、この記事がオススメです

PHPの学習でおすすめの本と動画【2023年最新】

▼ Laravelについてはこの記事で、バージョンごとに紹介しています 目次1 動画教材2 初心者向け【入門編】3 中級者向け 動画教材 【PHP入門】2ちゃんねる掲示板クローンを作りながらPHPとMySQLの基礎と本質をマスターするPHP ...

続きを見る


Laravelをより詳しく勉強したい人には、この記事がオススメです

Laravelの学習でおすすめの本【2023年最新】

目次1 Laravel52 Laravel63 Laravel84 Laravel9 Laravel5 PHPフレームワーク Laravel入門 本書は、Laravelのインストールから、フレームワークの中心になるModel-View-Co ...

続きを見る


WordPressをより詳しく勉強したい人には、この記事がオススメです

WordPressの学習でおすすめの本【2023年最新】

目次1 初心者向け2 中級者向け 初心者向け いちばんやさしいWordPressの教本 第4版 5.x対応 これからワードプレスを始める初心者にオススメの本です。 手早くサイトを作りたい人は、この本を買いましょう^^ 非常にわかりやすいです ...

続きを見る


Rubyをより詳しく勉強したい人には、この記事がオススメです

Rubyの学習でおすすめの本【2023年最新】

▼ Ruby on Railsについては、この記事で紹介しています 目次1 初心者向け【入門編】2 中級者向け3 上級者向け 初心者向け【入門編】 脱初心者のための問題集 Ruby編 Rubyの基礎的な文法を学習し終わった後、次に何をしよう ...

続きを見る


Javaをより詳しく勉強したい人には、この記事がオススメです

Javaの学習でおすすめの本【2023年最新】

▼ Spring Bootの勉強をしたい人には、この記事がおすすめです 目次1 初心者向け2 中級者向け 初心者向け 2週間でJava SE Bronzeの基礎が学べる本 Java SE Bronzeをこれから取得しようという人向けの書籍で ...

続きを見る


Gitをより詳しく勉強したい人には、この記事がオススメです

Gitの学習でおすすめの本【2023年最新】

目次1 漫画?でわかりやすく学ぶ入門書の定番2 初心者向け3 中級者向け4 上級者向け 漫画?でわかりやすく学ぶ入門書の定番 改訂2版 わかばちゃんと学ぶ Git使い方入門 Gitの入門書の定番と言っても差し支えありません。 絵や図で解説し ...

続きを見る


Perlをより詳しく勉強したい人には、この記事がオススメです

Perlの学習でおすすめの本【2023年最新】

目次1 初心者向け2 中級者向け 初心者向け Perlではじめる プログラミング超入門 プログラミングの未経験者にもオススメできます。 Perlのインストール方法から基礎的な構文まで、丁寧に解説されています。 最後の方には、簡単なゲームも作 ...

続きを見る


ゼロからWebエンジニアになりたい人には、この記事がオススメです

ゼロからWebエンジニアとして就職する方法【何もない自分に積み上げていく】

ちまたには、「エンジニアになるための情報」で溢れかえっています。 ジョージさんが考える「Webエンジニアになる方法」を教えて下さい。 目次1 私が定義するWebエンジニア2 必ずやるべきこと3 推奨されること4 まとめ 私が定義するWebエ ...

続きを見る


独学で実務っぽい経験を積みたい人には、この記事がオススメです

エンジニアが独学で実務経験っぽいことを学ぶ方法

エンジニアとして就職するためには実務経験が大事だと聞いていますが、就職しないことには実務経験を積むことができません。 どうやって、最初の実務経験を積んだらいいでしょうか? 目次1 スクールの理想と現実2 IT業界が抱える矛盾点3 擬似的に実 ...

続きを見る

関連コンテンツ

-PHP, プログラミング

Copyright© プログラミング道場 , 2023 All Rights Reserved Powered by AFFINGER4.