Skip to main content
Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
EN
Upload
Download free for 30 days
Sign in
Uploaded by
schoowebcampus
16,290 views
PHP実践 ~外部APIを使って情報を取得する~
https://schoo.jp/class/1999
Business
◦
Read more
6
Save
Share
Embed
1
/ 40
2
/ 40
3
/ 40
4
/ 40
5
/ 40
6
/ 40
7
/ 40
8
/ 40
9
/ 40
10
/ 40
11
/ 40
12
/ 40
13
/ 40
14
/ 40
15
/ 40
16
/ 40
17
/ 40
18
/ 40
19
/ 40
20
/ 40
More Related Content
PPTX
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
68 slides
5.8K views
PDF
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
by
Takuto Wada
40 slides
17.6K views
PDF
20170525 jsug バッチは地味だが役に立つ
by
Yuichi Hasegawa
72 slides
6.4K views
PPTX
SQLアンチパターン メンター用資料
by
Hironori Miura
109 slides
15.2K views
PPTX
Heroku connect 苦肉の四苦八苦
by
Hideki Ohkubo
35 slides
3.4K views
PDF
Microsoft Graph APIを活用した社内アプリケーション開発
by
Yuki Hattori
49 slides
24.5K views
PPTX
はじめてのElasticsearchクラスタ
by
Satoyuki Tsukano
63 slides
40.2K views
PDF
ドメイン駆動設計という設計スタイル
by
増田 亨
63 slides
17.7K views
モノリスからマイクロサービスへの移行 ~ストラングラーパターンの検証~(Spring Fest 2020講演資料)
by
NTT DATA Technology & Innovation
68 slides
5.8K views
SQLアンチパターン - 開発者を待ち受ける25の落とし穴
by
Takuto Wada
40 slides
17.6K views
20170525 jsug バッチは地味だが役に立つ
by
Yuichi Hasegawa
72 slides
6.4K views
SQLアンチパターン メンター用資料
by
Hironori Miura
109 slides
15.2K views
Heroku connect 苦肉の四苦八苦
by
Hideki Ohkubo
35 slides
3.4K views
Microsoft Graph APIを活用した社内アプリケーション開発
by
Yuki Hattori
49 slides
24.5K views
はじめてのElasticsearchクラスタ
by
Satoyuki Tsukano
63 slides
40.2K views
ドメイン駆動設計という設計スタイル
by
増田 亨
63 slides
17.7K views
What's hot
PDF
イエラエセキュリティMeet up 20210820
by
GMOサイバーセキュリティ byイエラエ株式会社
106 slides
1.6K views
PDF
ドメイン駆動設計サンプルコードの徹底解説
by
増田 亨
41 slides
22.2K views
PDF
Dockerからcontainerdへの移行
by
Kohei Tokunaga
36 slides
19.4K views
PDF
Swaggerでのapi開発よもやま話
by
KEISUKE KONISHI
36 slides
28.5K views
PPTX
Kafkaを活用するためのストリーム処理の基本
by
Sotaro Kimura
22 slides
8.5K views
PDF
Serverless時代のJavaについて
by
Amazon Web Services Japan
90 slides
13.6K views
PDF
インフラCICDの勘所
by
Toru Makabe
50 slides
16K views
PDF
データベース設計徹底指南
by
Mikiya Okuno
132 slides
115.5K views
PDF
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
by
増田 亨
43 slides
14.4K views
PDF
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
by
Yahoo!デベロッパーネットワーク
90 slides
11.7K views
PDF
PHPの戻り値型宣言でselfを使ってみよう
by
DQNEO
25 slides
3K views
PDF
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
52 slides
27K views
PDF
運用してわかったLookerの本質的メリット : Data Engineering Study #8
by
Masatoshi Abe
28 slides
2.8K views
PPTX
イベント・ソーシングを知る
by
Shuhei Fujita
33 slides
31.8K views
PDF
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
by
増田 亨
83 slides
31.1K views
PPTX
Elasticsearchインデクシングのパフォーマンスを測ってみた
by
Ryoji Kurosawa
31 slides
7.5K views
PPTX
組み込みメーカーだからこそのAWS Cognitoの使い方
by
shotaueda3
18 slides
1.7K views
PDF
GitOpsでKubernetesのManifest管理
by
Shinya Sasaki
32 slides
6.1K views
PDF
ドメイン駆動設計の正しい歩き方
by
増田 亨
61 slides
26.1K views
PDF
AWSのログ管理ベストプラクティス
by
Akihiro Kuwano
57 slides
79.8K views
イエラエセキュリティMeet up 20210820
by
GMOサイバーセキュリティ byイエラエ株式会社
106 slides
1.6K views
ドメイン駆動設計サンプルコードの徹底解説
by
増田 亨
41 slides
22.2K views
Dockerからcontainerdへの移行
by
Kohei Tokunaga
36 slides
19.4K views
Swaggerでのapi開発よもやま話
by
KEISUKE KONISHI
36 slides
28.5K views
Kafkaを活用するためのストリーム処理の基本
by
Sotaro Kimura
22 slides
8.5K views
Serverless時代のJavaについて
by
Amazon Web Services Japan
90 slides
13.6K views
インフラCICDの勘所
by
Toru Makabe
50 slides
16K views
データベース設計徹底指南
by
Mikiya Okuno
132 slides
115.5K views
オブジェクト指向プログラミング入門 -- Java object-oriented programming primer
by
増田 亨
43 slides
14.4K views
Yahoo! JAPANのコンテンツプラットフォームを支えるSpring Cloud Streamによるマイクロサービスアーキテクチャ #jsug #sf_52
by
Yahoo!デベロッパーネットワーク
90 slides
11.7K views
PHPの戻り値型宣言でselfを使ってみよう
by
DQNEO
25 slides
3K views
こんなに使える!今どきのAPIドキュメンテーションツール
by
dcubeio
52 slides
27K views
運用してわかったLookerの本質的メリット : Data Engineering Study #8
by
Masatoshi Abe
28 slides
2.8K views
イベント・ソーシングを知る
by
Shuhei Fujita
33 slides
31.8K views
ドメインロジックに集中せよ 〜ドメイン駆動設計 powered by Spring
by
増田 亨
83 slides
31.1K views
Elasticsearchインデクシングのパフォーマンスを測ってみた
by
Ryoji Kurosawa
31 slides
7.5K views
組み込みメーカーだからこそのAWS Cognitoの使い方
by
shotaueda3
18 slides
1.7K views
GitOpsでKubernetesのManifest管理
by
Shinya Sasaki
32 slides
6.1K views
ドメイン駆動設計の正しい歩き方
by
増田 亨
61 slides
26.1K views
AWSのログ管理ベストプラクティス
by
Akihiro Kuwano
57 slides
79.8K views
Similar to PHP実践 ~外部APIを使って情報を取得する~
PDF
WordPressAPI
by
Yuki Okamoto
51 slides
1.3K views
PDF
WordPress APIで作るモバイルアプリ
by
アシアル株式会社
62 slides
10.8K views
PPT
Tokyowebmining5 yokkuns
by
Yohei Sato
98 slides
1.3K views
PPT
マッシュアップ勉強会
by
seiryo
22 slides
503 views
PPT
マッシュアップ勉強会
by
guestadcb01
22 slides
265 views
PDF
Api
by
Jun Chiba
15 slides
1.1K views
PDF
自己紹介とWebサービスAPI勉強会について
by
脇村 隆
105 slides
826 views
PDF
Api all
by
Jun Chiba
9 slides
1.7K views
PDF
クロスドメインアクセスを理解してWeb APIを楽しく使おう
by
kitfactory
15 slides
36.8K views
PDF
Api gurunavi
by
Jun Chiba
11 slides
875 views
PDF
Data API と flexibleSearch、MTAppjQuery で広がるMT6の使い方
by
bitpart
79 slides
5.1K views
PDF
【慶應義塾大学】データビジネス創造コンソーシアム第17回スキル養成講座 講義資料.pdf
by
keiodig
7 slides
11 views
PDF
50分で掴み取る ASP.NET Web API パターン&テクニック
by
miso- soup3
53 slides
23.3K views
PDF
オープンデータ Web API
by
Hironori Sakamoto
30 slides
600 views
PPTX
Apilecture for 2014/02/22 at shannonlab
by
Yutaka Kobayshi
115 slides
656 views
PDF
APICのREST API入門
by
Takehiro Yokoishi
25 slides
4.7K views
PDF
WebAPIと連携してみよう(1)
by
Yohei Sakakibara
14 slides
3.2K views
PDF
「新しい」を生み出すためのWebアプリ開発とその周辺
by
Yusuke Wada
64 slides
19K views
PDF
20080327 ku-librarians勉強会 #98:データベースからデータだけをいただく方法(web api入門)
by
kulibrarians
10 slides
1.2K views
PPTX
20170705 apiをつくろう
by
CData Software Japan
51 slides
1.3K views
WordPressAPI
by
Yuki Okamoto
51 slides
1.3K views
WordPress APIで作るモバイルアプリ
by
アシアル株式会社
62 slides
10.8K views
Tokyowebmining5 yokkuns
by
Yohei Sato
98 slides
1.3K views
マッシュアップ勉強会
by
seiryo
22 slides
503 views
マッシュアップ勉強会
by
guestadcb01
22 slides
265 views
Api
by
Jun Chiba
15 slides
1.1K views
自己紹介とWebサービスAPI勉強会について
by
脇村 隆
105 slides
826 views
Api all
by
Jun Chiba
9 slides
1.7K views
クロスドメインアクセスを理解してWeb APIを楽しく使おう
by
kitfactory
15 slides
36.8K views
Api gurunavi
by
Jun Chiba
11 slides
875 views
Data API と flexibleSearch、MTAppjQuery で広がるMT6の使い方
by
bitpart
79 slides
5.1K views
【慶應義塾大学】データビジネス創造コンソーシアム第17回スキル養成講座 講義資料.pdf
by
keiodig
7 slides
11 views
50分で掴み取る ASP.NET Web API パターン&テクニック
by
miso- soup3
53 slides
23.3K views
オープンデータ Web API
by
Hironori Sakamoto
30 slides
600 views
Apilecture for 2014/02/22 at shannonlab
by
Yutaka Kobayshi
115 slides
656 views
APICのREST API入門
by
Takehiro Yokoishi
25 slides
4.7K views
WebAPIと連携してみよう(1)
by
Yohei Sakakibara
14 slides
3.2K views
「新しい」を生み出すためのWebアプリ開発とその周辺
by
Yusuke Wada
64 slides
19K views
20080327 ku-librarians勉強会 #98:データベースからデータだけをいただく方法(web api入門)
by
kulibrarians
10 slides
1.2K views
20170705 apiをつくろう
by
CData Software Japan
51 slides
1.3K views
More from schoowebcampus
PPTX
Compl exxx after
by
schoowebcampus
10 slides
10.9K views
PPTX
Compl exxx before
by
schoowebcampus
10 slides
8.7K views
PDF
ビジネスプラン概要資料 New
by
schoowebcampus
15 slides
2.5K views
PDF
2479
by
schoowebcampus
62 slides
4K views
PDF
schoo法人利用-ビジネスプランのご案内
by
schoowebcampus
7 slides
4.2K views
PDF
i.school, The University of Tokyo "Methods of concept designing and user surv...
by
schoowebcampus
45 slides
2.2K views
PDF
i.school, The University of Tokyo "Divergence, convergence, and expression of...
by
schoowebcampus
55 slides
1.7K views
PDF
i.school, The University of Tokyo "The purposes and methods of technological ...
by
schoowebcampus
59 slides
1.5K views
PDF
i.school, The University of Tokyo "The purposes and methods of interviews and...
by
schoowebcampus
51 slides
1.7K views
PDF
i.school, The University of Tokyo "Foundation and methodology in creating inn...
by
schoowebcampus
95 slides
1.6K views
PDF
ポートフォリオ公開後のマーケティング法
by
schoowebcampus
77 slides
2.6K views
PDF
1840
by
schoowebcampus
77 slides
1.9K views
PDF
授業資料(スクー)
by
schoowebcampus
1 slide
1.9K views
PDF
個人事業主・フリーランスのための確定申告 ~白色申告編~
by
schoowebcampus
39 slides
3.9K views
PDF
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
by
schoowebcampus
31 slides
2.3K views
PDF
少ない資金でシステム開発を委託する方法(補助金と類似事例の有無)
by
schoowebcampus
11 slides
2.1K views
PDF
補助金で合格しやすい事業計画の作り方(主に創業補助金、ものづくり補助金)
by
schoowebcampus
60 slides
2.8K views
PDF
アプリ開発したい人必見!Swiftを使ってiPhoneアプリに広告実装!【appC cloud school】
by
schoowebcampus
25 slides
1.6K views
PDF
快適にWebデザインするためのフリーランスの仕事の流れ【プロジェクトマネジメント編】夏本 健司
by
schoowebcampus
45 slides
20.8K views
PDF
ゲームや映像で使えるフリー音楽素材「魔王魂」の運営者に聞く、BGM・効果音活用講座
by
schoowebcampus
29 slides
2.5K views
Compl exxx after
by
schoowebcampus
10 slides
10.9K views
Compl exxx before
by
schoowebcampus
10 slides
8.7K views
ビジネスプラン概要資料 New
by
schoowebcampus
15 slides
2.5K views
2479
by
schoowebcampus
62 slides
4K views
schoo法人利用-ビジネスプランのご案内
by
schoowebcampus
7 slides
4.2K views
i.school, The University of Tokyo "Methods of concept designing and user surv...
by
schoowebcampus
45 slides
2.2K views
i.school, The University of Tokyo "Divergence, convergence, and expression of...
by
schoowebcampus
55 slides
1.7K views
i.school, The University of Tokyo "The purposes and methods of technological ...
by
schoowebcampus
59 slides
1.5K views
i.school, The University of Tokyo "The purposes and methods of interviews and...
by
schoowebcampus
51 slides
1.7K views
i.school, The University of Tokyo "Foundation and methodology in creating inn...
by
schoowebcampus
95 slides
1.6K views
ポートフォリオ公開後のマーケティング法
by
schoowebcampus
77 slides
2.6K views
1840
by
schoowebcampus
77 slides
1.9K views
授業資料(スクー)
by
schoowebcampus
1 slide
1.9K views
個人事業主・フリーランスのための確定申告 ~白色申告編~
by
schoowebcampus
39 slides
3.9K views
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
by
schoowebcampus
31 slides
2.3K views
少ない資金でシステム開発を委託する方法(補助金と類似事例の有無)
by
schoowebcampus
11 slides
2.1K views
補助金で合格しやすい事業計画の作り方(主に創業補助金、ものづくり補助金)
by
schoowebcampus
60 slides
2.8K views
アプリ開発したい人必見!Swiftを使ってiPhoneアプリに広告実装!【appC cloud school】
by
schoowebcampus
25 slides
1.6K views
快適にWebデザインするためのフリーランスの仕事の流れ【プロジェクトマネジメント編】夏本 健司
by
schoowebcampus
45 slides
20.8K views
ゲームや映像で使えるフリー音楽素材「魔王魂」の運営者に聞く、BGM・効果音活用講座
by
schoowebcampus
29 slides
2.5K views
PHP実践 ~外部APIを使って情報を取得する~
1.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 1 PHP実践∼外部APIを使って情報を取得する∼ アシアル株式会社 岡本雄樹
2.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 2 自己紹介 • 名前 – 岡本雄樹 (ハンドルネーム:ジャスティス岡本) • 職業 – アシアルという会社で教育事業を営んでおります • 略歴 – プログラミングを始めたきっかけ • 高校生の時に「プログラミングコンテスト」があるのでプログラムを作るよう 部活の顧問に指示されたため、簡単そうだったのでPHPを独学で始める。 – プログラミングの仕事をしながら大学に通う • ベンチャー企業で勤怠管理システムの開発に携わったり、通販企業で働いてい たらいつの間にか社内SEになっており、システム構築からサーバの運用などシ ステム面を一手に引き受ける。 – 新卒(?)でアシアル入社 • 主にECサイトの自社パッケージ開発や多数のEC案件に関わる。 – 教育事業を独立させる • 新規事業会議で、新規も良いですが既存の教育事業を強化しましょうと提案、 3ヶ月後に配置配属。1年後にマネージャーとなる。 • ブログ:ジャスティス岡本の週末ハッカー – http://j801.com/ • 著書 – 「イラストでよくわかるPHP はじめてのWebプログラミング入門」
3.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 3 外部APIを使うメリット • 自分のWebサービスに様々な情報を取り込めます – ニュース、天気、通販サイトの商品情報など • アイディア次第で面白いサービスや便利なサービスを作 ることが出来るようになります
4.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 4 事前準備 • APIアカウントの用意 –今回は不要 • PHP実行環境 • 実習用のソースコード –今回は配布なし
5.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 5 アジェンダ • 第一回 – WebAPIとは • 主なAPI提供サイト • PHPからAPIを利用するための技術 – WebAPIを試す • 郵便番号APIを試してみよう • お天気APIを試してみよう • POSTリクエストをPHPで行う方法 • 第二回 – 複数のAPIを組み合わせてマッシュアップを行う • 第三回 – Twitter検索アプリの作成
6.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 6 WebAPIとは
7.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 7 WebAPIとは • そもそもAPIとは – Application (アプリケーション) – Program(プログラム) – Interface(インタフェース) • 他のアプリケーションに対して特定機能 を簡潔に呼び出せるように、インタ フェースを規定したものです。
8.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 8 APIの例 • APIの例 – ブラウザ(HTML5) • 位置情報を取得するAPIや画面に絵を描くためのAPIが提供 されています。 – OS • フォルダやファイルの管理、ウィンドウの表示をはじめ様々 な機能がAPIとして提供されています。 – Webサービス • 一部のWebサービスは外部のWebサービスやアプリから連携 できるように、WebAPIを開放しています。
9.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 9 WebAPIとは • Web APIの特徴 – 提供元 • 色々なWebサイトが提供しています – 楽天やTwitter、Googleなど – 代表的な機能 • 情報を取得する機能 – 例:商品一覧など • 情報を加工する機能 – 例:数字を渡すとグラフで返してくれるAPIなど
10.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 10 主なAPI提供サイト
11.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 11 Yahoo! JAPAN • 主な提供機能 – 検索 – 地図 – オークション – ショッピング – ニュース • 情報源 – デベロッパーネットワークトップにて公開 • http://developer.yahoo.co.jp/
12.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 12 Google • 主な提供機能 – Google Maps – Custom Search API • 情報源 – https://developers.google.com/
13.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 13 楽天ウェブサービス • 主な提供機能 – 楽天市場 – 楽天ブックス – 楽天オークション – 楽天トラベル • 情報源 – http://webservice.rakuten.co.jp/
14.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 14 Amazon • 主な提供機能 – 商品検索 – AWSの管理API • 情報源 – http://www.amazon.co.jp/gp/feature.html?docId =451209
15.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 15 Twitter • 主な提供機能 – 検索 – ツイート – 他、殆ど全ての機能 • 情報源 – https://dev.twitter.com/
16.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 16 WebAPIを公開する理由
17.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 17 WebAPIを提供する側のメリット • API利用が売り上げと直結しているケース – 課金、 EC2、商用地図など • 自社サイトの宣伝やアフィリエイトと結びついている ケース – 楽天やAmazon等 • エコシステムの構築(サードパーティー製アプリなど) – TwitterやFacebookは多くの機能をAPI提供している • サードバーティ製のサイトやクライアントアプリが豊富。 – サードパーティーが盛り上がれば利用者が増える » それに伴い「会員」や「データ」などの資産が増える
18.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 18 WebAPIの活用方法 • WebAPIの活用方法 – 表現力向上 • 地図やグラフを描画するAPIで表現力を向上させる – 利便性向上 • お天気APIやニュースAPIを利用してサイトの利便性を向上させる – アフィリエイト • サイトにAmazonや楽天の商品を自動掲載してアフィリエイト収入 を得る – 口コミマーケティング • Twitter連携を行うことで口コミに乗りやすくする。 – 記事を投稿すると自動的にTwitterにURLを投稿 – 自社サイトを宣伝するBotを作る – 課金 • オンライン決済会社が提供するAPIを利用し課金を行う
19.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 19 APIを利用するための技術
20.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 20 APIプロトコル • REST(Representational State Transfer) – 特定のURLにGETやPOSTでリクエストすることにより、データ の取得などの何らかの操作を行うことができます。現在の主流 です。 • SOAP – 古くから利用されているXMLを応用したオブジェクトデータ通 信の規格です。拡張性の高さが強みですが複雑なため近年では 廃れつつあります。
21.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 21 データ形式 • JSON(JavaScript Object Notation) – JavaScriptにおけるオブジェクトの記述方法と同じ文法のデータ形式です。データが軽量か つJavascriptから楽に扱えるため、Webアプリケーションと相性が良いのが特徴です。この ため、最近のWebAPIはJSONをサポートしているものが多いです。 – JavaScript以外の言語からの呼び出し • PHPからもjson_encode/decode関数を使うことで、簡単に扱うことが可能です(PHP5.2以降) • XML – 独自のフォーマットを作成することができる、汎用性の高いデータ形式です。RSSなどの フォーマットとして採用されています。 – メリット • 情報を規格化することができる • 人間にも読みやすい形式である – デメリット • タグ構造のためデータが冗長で重たくなる • PHP等でデコード(パース)やエンコードする負担も大きい
22.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 22 WebAPIを活用するためのPHP関数 • file_get_contests()関数 – file_get_contestsは元々サーバ上のファイルを開くための関数で すが、外部サイトのURLにリクエストを送信し、結果を変数に 格納することができます。 – GETメソッドでリクエストを送信します。 • cURL – cURLはhttp等の通信プロトコルをサポートする高機能なクラス です。 – POSTメソッドで情報を送信したい場合や、厳密なエラー処理・ エラーコードの取得を行いたい場合に利用します。
23.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 23 WebAPIを試してみよう
24.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 24 WebAPIを試す • 郵便番号検索API – URL • http://zip.cgis.biz/ – 機能 • 郵便番号を元に住所情報を返してくれるAPIです。 – 使い方 • SimpleAPIのURLに続けて知りたい郵便番号を渡します – 例:http://zip2.cgis.biz/xml/zip.php?zn=1130033
25.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 25 郵便番号検索APIの結果 <ZIP_result> <result name="ZipSearchXML"/> <result version="1.01"/> <result request_url="http%3A%2F%2Fzip.cgis.biz%2Fxml%2Fzip.php%3Fzn%3D1130033"/> <result request_zip_num="1130033"/> <result request_zip_version="none"/> <result result_code="1"/> <result result_zip_num="1130033"/> <result result_zip_version="0"/> <result result_values_count="1"/> <ADDRESS_value> ※次ページに記載 </ADDRESS_value> </ZIP_result>
26.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 26 郵便番号検索APIの結果 <ADDRESS_value> <value state_kana="トウキョウト"/> <value city_kana="ブンキョウク"/> <value address_kana="ホンゴウ"/> <value company_kana="none"/> <value state="東京都"/> <value city="文京区"/> <value address="本郷"/> <value company="none"/> </ADDRESS_value>
27.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 27 結果をPHPで取得してみよう • 結果をPHPで取得してみよう – file_get_contents()関数 • URLを元にコンテンツを取得する <?php $url = "http://zip2.cgis.biz/xml/zip.php?zn=1130033"; $result = file_get_contents($url); echo $result; //echo htmlspecialchars($result, ENT_QUOTES, "UTF-8"); ?>
28.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 28 取得結果 • ブラウザで開いてHTMLソースを確認した様子
29.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 29 XMLについて • 先ほどの結果情報はXML形式のテキストです – XMLとは? • HTMLのようなタグで意味づけするマークアップ言語 • 汎用的に利用することが出来る • ブログの更新情報をまとめたRSSなどもXMLを活用し ている
30.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 30 PHPでXMLを扱う方法 • PHPでXMLを扱う方法 – SimpleXML拡張モジュール • XMLをオブジェクトとして変換する • 値をオブジェクトのプロパティとして参照できる • foreachなどで繰り返し処理にかけることができる <?php $url = "http://zip2.cgis.biz/xml/zip.php?zn=1130033"; $xml = simplexml_load_file($url); // オブジェクトを確認 var_dump($xml); // 市区町村情報を文字列として出力 echo (string) $xml->ADDRESS_value->value[5]->attributes()->city; ?>
31.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 31 郵便番号APIの活用例 • 郵便番号APIの活用例 – 住所入力補助を行うデモが同サイトで公開されています • http://zip.cgis.biz/sample/zip_search_xml.php
32.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 32 WebAPIを試す∼その2 • お天気API(OpenWeatherMap) – URL • http://openweathermap.org/ – 機能 • 都市名や緯度経度などから天気情報を返してくれるAPIです – 使い方 • 例:東京の天気情報を取得 – http://api.openweathermap.org/data/2.5/weather?q=Tokyo,jp
33.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 33 OpenWeatherMap APIの結果 {"coord":{"lon":139.69,"lat":35.69},"sys":{"message":0.0881,"country":"JP","sunrise ":1425330515,"sunset":1425371868},"weather":[{"id":500,"main":"Rain","descript ion":"light rain","icon":"10n"}],"base":"cmc stations","main":{"temp":278.308,"temp_min":278.308,"temp_max":278.308,"pres sure":1022.61,"sea_level":1027.62,"grnd_level":1022.61,"humidity":100},"wind":{" speed":1.67,"deg":333},"clouds":{"all":92},"rain":{"3h":1},"dt":1425397219,"id":185 0147,"name":"Tokyo","cod":200}
34.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 34 JSONについて • 先ほどの結果情報はJSON形式のテキストです – JSONとは? • JavaScript言語でオブジェクトを表現する時の表記方法 • PHPでも利用可能 – json_decode()やjson_encode()関数を使う <?php $url = "http://api.openweathermap.org/data/2.5/weather?q=Tokyo,jp"; $json = file_get_contents($url); $result = json_decode($json); // オブジェクトを確認 var_dump($result); // 天気情報を出力 echo $result->weather[0]->main; ?>
35.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 35 取得結果 • ブラウザで開いてHTMLソースを確認した様子
36.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 36 GETではなくPOSTしたい場合 • GETではなくPOSTしたい場合 – POSTやその他複雑なリクエストを送りたい場合はcURLが便利です • cURLとは – HTTPをはじめとした様々な通信に対応したライブラリ • クッキーなどのヘッダーも送れます
37.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 37 POSTの実験 • POSTの実験 – 『認証なし』で利用できる手頃なAPIを見つけられませんでした • 自分のサイトの掲示板に投稿します – http://illustphp.com/5/index.php name comment submit POSTで投稿可能
38.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 38 POSTの実験 • 手順 – curlのセッションを初期化 – 送り先のURLと送り方(POST)、送信データをcurlに設定 • http_build_queryでデータをURLエンコード – curlのセッションを実行 – curlのセッションを終了 <?php $url = "http://illustphp.com/5/write.php"; $data = array('name' => '岡本', 'comment' => 'スクー出演!', 'submit' => 1); $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); curl_exec($ch); curl_close($ch); ?>
39.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 39 【次回予告】マッシュアップ
40.
URL : http://www.asial.co.jp/
│ Copyright © 2015 Asial Corporation. All Rights Reserved. │ 40 マッシュアップとは • 複数のWebAPI(と自分のコンテンツやアイディア)を組み合わせて、新 しいサービスを作り上げることを「マッシュアップ」と呼びます。 • 次回予告! – 楽天商品検索とYahoo!ショッピング商品検索を組み合わせて、複数のショッ ピングサイトから商品を検索するアプリを作ってみましょう。