Submit Search
Upload
PHP実践 ~外部APIを使って情報を取得する~
•
6 likes
•
16,188 views
schoowebcampus
Follow
https://schoo.jp/class/1999
Read less
Read more
Business
Report
Share
Report
Share
1 of 40
Recommended
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
ServiceとRepository
ServiceとRepository
シオリ ショウノ
C言語なWebSocketの遊び方。
C言語なWebSocketの遊び方。
Masahiko Hashimoto
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話
Makoto Haruyama
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
目grep入門 +解説
目grep入門 +解説
murachue
Recommended
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
GoによるWebアプリ開発のキホン
GoによるWebアプリ開発のキホン
Akihiko Horiuchi
ServiceとRepository
ServiceとRepository
シオリ ショウノ
C言語なWebSocketの遊び方。
C言語なWebSocketの遊び方。
Masahiko Hashimoto
WebSocket / WebRTCの技術紹介
WebSocket / WebRTCの技術紹介
Yasuhiro Mawarimichi
マイクロサービスっぽい感じの話
マイクロサービスっぽい感じの話
Makoto Haruyama
テスト文字列に「うんこ」と入れるな
テスト文字列に「うんこ」と入れるな
Kentaro Matsui
目grep入門 +解説
目grep入門 +解説
murachue
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
Takayuki Shimizukawa
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
入門 シェル実装
入門 シェル実装
Yusuke Sangenya
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
asm.jsとWebAssemblyって実際なんなの?
asm.jsとWebAssemblyって実際なんなの?
Yosuke Onoue
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
PPL 2022 招待講演: 静的型つき函数型組版処理システムSATySFiの紹介
PPL 2022 招待講演: 静的型つき函数型組版処理システムSATySFiの紹介
T. Suwa
Serverless時代のJavaについて
Serverless時代のJavaについて
Amazon Web Services Japan
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
さくらのクラウドハンズオン~ロードバランサ編~
さくらのクラウドハンズオン~ロードバランサ編~
さくらインターネット株式会社
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Hiro H.
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
Takuto Wada
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
Exaリーディングのすゝめ
Exaリーディングのすゝめ
Shinichi Makino
Plan 9のお話
Plan 9のお話
Ryousei Takano
関数型プログラミングのデザインパターンひとめぐり
関数型プログラミングのデザインパターンひとめぐり
Kazuyuki TAKASE
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
アシアル株式会社
JavaScript祭りLTでmonacaを紹介
JavaScript祭りLTでmonacaを紹介
Yuki Okamoto
More Related Content
What's hot
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
Takayuki Shimizukawa
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
Yoshiki Hayama
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
NTT Communications Technology Development
入門 シェル実装
入門 シェル実装
Yusuke Sangenya
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
テストコードの DRY と DAMP
テストコードの DRY と DAMP
Yusuke Kagata
asm.jsとWebAssemblyって実際なんなの?
asm.jsとWebAssemblyって実際なんなの?
Yosuke Onoue
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
Takafumi ONAKA
PPL 2022 招待講演: 静的型つき函数型組版処理システムSATySFiの紹介
PPL 2022 招待講演: 静的型つき函数型組版処理システムSATySFiの紹介
T. Suwa
Serverless時代のJavaについて
Serverless時代のJavaについて
Amazon Web Services Japan
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
Yoshiyasu SAEKI
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
dcubeio
さくらのクラウドハンズオン~ロードバランサ編~
さくらのクラウドハンズオン~ロードバランサ編~
さくらインターネット株式会社
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Hiro H.
Vacuum徹底解説
Vacuum徹底解説
Masahiko Sawada
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
Takuto Wada
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
shinjiigarashi
Exaリーディングのすゝめ
Exaリーディングのすゝめ
Shinichi Makino
Plan 9のお話
Plan 9のお話
Ryousei Takano
関数型プログラミングのデザインパターンひとめぐり
関数型プログラミングのデザインパターンひとめぐり
Kazuyuki TAKASE
What's hot
(20)
Webアプリを並行開発する際のマイグレーション戦略
Webアプリを並行開発する際のマイグレーション戦略
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
「のどが渇いた」というユーザーに何を出す? ユーザーの「欲しい」に惑わされない、本当のインサイトを見つけるUXデザイン・UXリサーチ
分散トレーシング技術について(Open tracingやjaeger)
分散トレーシング技術について(Open tracingやjaeger)
入門 シェル実装
入門 シェル実装
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
テストコードの DRY と DAMP
テストコードの DRY と DAMP
asm.jsとWebAssemblyって実際なんなの?
asm.jsとWebAssemblyって実際なんなの?
エンジニアの個人ブランディングと技術組織
エンジニアの個人ブランディングと技術組織
PPL 2022 招待講演: 静的型つき函数型組版処理システムSATySFiの紹介
PPL 2022 招待講演: 静的型つき函数型組版処理システムSATySFiの紹介
Serverless時代のJavaについて
Serverless時代のJavaについて
ストリーム処理を支えるキューイングシステムの選び方
ストリーム処理を支えるキューイングシステムの選び方
こんなに使える!今どきのAPIドキュメンテーションツール
こんなに使える!今どきのAPIドキュメンテーションツール
さくらのクラウドハンズオン~ロードバランサ編~
さくらのクラウドハンズオン~ロードバランサ編~
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Linuxにて複数のコマンドを並列実行(同時実行数の制限付き)
Vacuum徹底解説
Vacuum徹底解説
TDD のこころ @ OSH2014
TDD のこころ @ OSH2014
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
導入から 10 年、PHP の trait は滅びるべきなのか その適切な使いどころと弱点、将来について
Exaリーディングのすゝめ
Exaリーディングのすゝめ
Plan 9のお話
Plan 9のお話
関数型プログラミングのデザインパターンひとめぐり
関数型プログラミングのデザインパターンひとめぐり
Similar to PHP実践 ~外部APIを使って情報を取得する~
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
アシアル株式会社
JavaScript祭りLTでmonacaを紹介
JavaScript祭りLTでmonacaを紹介
Yuki Okamoto
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
Amazon Web Services Japan
Api gurunavi
Api gurunavi
Jun Chiba
MuleアプリケーションのCI/CD
MuleアプリケーションのCI/CD
MuleSoft Meetup Tokyo
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
MasashiOtsuka1
WordPressAPI
WordPressAPI
Yuki Okamoto
Webdb2011 hadoop
Webdb2011 hadoop
Ichiro Fukuda
チラ見せ! マイソースファクトリーでのAws活用 修正
チラ見せ! マイソースファクトリーでのAws活用 修正
Yutaka Fujisaki
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
健一 辰濱
近年若者のサーバー離れが深刻化しています
近年若者のサーバー離れが深刻化しています
f-shingo
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
Amazon Web Services Japan
楽天のSplunk as a service
楽天のSplunk as a service
Rakuten Group, Inc.
Groonga meetup20151129
Groonga meetup20151129
JustSystems Corporation
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
Monaca
JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE
陽平 山口
Programming AWS with Python
Programming AWS with Python
Yasuhiro Matsuo
AzureでLaravel動かしてみた
AzureでLaravel動かしてみた
Keiji Kamebuchi
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
CData Software Japan
アンドロイド電子書籍アプリ作成キットを使ったアプリの作り方
アンドロイド電子書籍アプリ作成キットを使ったアプリの作り方
makiskmt
Similar to PHP実践 ~外部APIを使って情報を取得する~
(20)
WordPress APIで作るモバイルアプリ
WordPress APIで作るモバイルアプリ
JavaScript祭りLTでmonacaを紹介
JavaScript祭りLTでmonacaを紹介
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
[CTO Night & Day 2019] AWS Amplify で Web/Mobile 爆速スケーラブル Serverless 開発 #ctonight
Api gurunavi
Api gurunavi
MuleアプリケーションのCI/CD
MuleアプリケーションのCI/CD
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
SAP Inside Track 2018 LT資料「ABAPerが触ってきた SAP Cloud PlatformのABAP環境 」
WordPressAPI
WordPressAPI
Webdb2011 hadoop
Webdb2011 hadoop
チラ見せ! マイソースファクトリーでのAws活用 修正
チラ見せ! マイソースファクトリーでのAws活用 修正
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
近年若者のサーバー離れが深刻化しています
近年若者のサーバー離れが深刻化しています
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
[CTO Night & Day 2019] よくある課題を一気に解説!御社の技術レベルがアップする 2019 秋期講習 #ctonight
楽天のSplunk as a service
楽天のSplunk as a service
Groonga meetup20151129
Groonga meetup20151129
HTML5ハイブリッド アプリ開発実践編
HTML5ハイブリッド アプリ開発実践編
JAWSDAYS2016 Technical Deep DIVE
JAWSDAYS2016 Technical Deep DIVE
Programming AWS with Python
Programming AWS with Python
AzureでLaravel動かしてみた
AzureでLaravel動かしてみた
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
Angular でもっとAPIファースト・もっとモダンデザインなWebアプリケーションを作ろう!
アンドロイド電子書籍アプリ作成キットを使ったアプリの作り方
アンドロイド電子書籍アプリ作成キットを使ったアプリの作り方
More from schoowebcampus
Compl exxx after
Compl exxx after
schoowebcampus
Compl exxx before
Compl exxx before
schoowebcampus
ビジネスプラン概要資料 New
ビジネスプラン概要資料 New
schoowebcampus
2479
2479
schoowebcampus
schoo法人利用-ビジネスプランのご案内
schoo法人利用-ビジネスプランのご案内
schoowebcampus
i.school, The University of Tokyo "Methods of concept designing and user surv...
i.school, The University of Tokyo "Methods of concept designing and user surv...
schoowebcampus
i.school, The University of Tokyo "Divergence, convergence, and expression of...
i.school, The University of Tokyo "Divergence, convergence, and expression of...
schoowebcampus
i.school, The University of Tokyo "The purposes and methods of technological ...
i.school, The University of Tokyo "The purposes and methods of technological ...
schoowebcampus
i.school, The University of Tokyo "The purposes and methods of interviews and...
i.school, The University of Tokyo "The purposes and methods of interviews and...
schoowebcampus
i.school, The University of Tokyo "Foundation and methodology in creating inn...
i.school, The University of Tokyo "Foundation and methodology in creating inn...
schoowebcampus
ポートフォリオ公開後のマーケティング法
ポートフォリオ公開後のマーケティング法
schoowebcampus
1840
1840
schoowebcampus
授業資料(スクー)
授業資料(スクー)
schoowebcampus
個人事業主・フリーランスのための確定申告 ~白色申告編~
個人事業主・フリーランスのための確定申告 ~白色申告編~
schoowebcampus
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
schoowebcampus
少ない資金でシステム開発を委託する方法(補助金と類似事例の有無)
少ない資金でシステム開発を委託する方法(補助金と類似事例の有無)
schoowebcampus
補助金で合格しやすい事業計画の作り方(主に創業補助金、ものづくり補助金)
補助金で合格しやすい事業計画の作り方(主に創業補助金、ものづくり補助金)
schoowebcampus
アプリ開発したい人必見!Swiftを使ってiPhoneアプリに広告実装!【appC cloud school】
アプリ開発したい人必見!Swiftを使ってiPhoneアプリに広告実装!【appC cloud school】
schoowebcampus
快適にWebデザインするためのフリーランスの仕事の流れ【プロジェクトマネジメント編】夏本 健司
快適にWebデザインするためのフリーランスの仕事の流れ【プロジェクトマネジメント編】夏本 健司
schoowebcampus
ゲームや映像で使えるフリー音楽素材「魔王魂」の運営者に聞く、BGM・効果音活用講座
ゲームや映像で使えるフリー音楽素材「魔王魂」の運営者に聞く、BGM・効果音活用講座
schoowebcampus
More from schoowebcampus
(20)
Compl exxx after
Compl exxx after
Compl exxx before
Compl exxx before
ビジネスプラン概要資料 New
ビジネスプラン概要資料 New
2479
2479
schoo法人利用-ビジネスプランのご案内
schoo法人利用-ビジネスプランのご案内
i.school, The University of Tokyo "Methods of concept designing and user surv...
i.school, The University of Tokyo "Methods of concept designing and user surv...
i.school, The University of Tokyo "Divergence, convergence, and expression of...
i.school, The University of Tokyo "Divergence, convergence, and expression of...
i.school, The University of Tokyo "The purposes and methods of technological ...
i.school, The University of Tokyo "The purposes and methods of technological ...
i.school, The University of Tokyo "The purposes and methods of interviews and...
i.school, The University of Tokyo "The purposes and methods of interviews and...
i.school, The University of Tokyo "Foundation and methodology in creating inn...
i.school, The University of Tokyo "Foundation and methodology in creating inn...
ポートフォリオ公開後のマーケティング法
ポートフォリオ公開後のマーケティング法
1840
1840
授業資料(スクー)
授業資料(スクー)
個人事業主・フリーランスのための確定申告 ~白色申告編~
個人事業主・フリーランスのための確定申告 ~白色申告編~
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
初心者でもUnityアプリに広告実装!広告も簡単に導入できる!儲かるアプリ講座【appC cloud school】Unityシリーズ vol.1
少ない資金でシステム開発を委託する方法(補助金と類似事例の有無)
少ない資金でシステム開発を委託する方法(補助金と類似事例の有無)
補助金で合格しやすい事業計画の作り方(主に創業補助金、ものづくり補助金)
補助金で合格しやすい事業計画の作り方(主に創業補助金、ものづくり補助金)
アプリ開発したい人必見!Swiftを使ってiPhoneアプリに広告実装!【appC cloud school】
アプリ開発したい人必見!Swiftを使ってiPhoneアプリに広告実装!【appC cloud school】
快適にWebデザインするためのフリーランスの仕事の流れ【プロジェクトマネジメント編】夏本 健司
快適にWebデザインするためのフリーランスの仕事の流れ【プロジェクトマネジメント編】夏本 健司
ゲームや映像で使えるフリー音楽素材「魔王魂」の運営者に聞く、BGM・効果音活用講座
ゲームや映像で使えるフリー音楽素材「魔王魂」の運営者に聞く、BGM・効果音活用講座
Recently uploaded
20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf
ssuser80a51f
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
masakisaito12
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
Yasuyoshi Minehisa
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
ssuserfb441f
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
masakisaito12
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
KayaSuetake1
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
ユニパー株式会社
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ 株式会社
Recently uploaded
(8)
20240427 zaim academy counseling lesson .pdf
20240427 zaim academy counseling lesson .pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
ストックマーク株式会社がご提供しているAnews(エーニュース)概要紹介.pdf
Service-introduction-materials-misorae-leadership
Service-introduction-materials-misorae-leadership
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
株式会社MAVEL会社概要_アフィリエイト広告_運用型広告_LTVを予測しLOIを最適化する広告代理店
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
ストックマーク株式会社がお客様へご提供しているAnews概要資料のご共有.pdf
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
202405_VISIONARYJAPAN_engineerteam_entrancebook(ver2.1)
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
UP103シリーズ パワーコメット ユニパー スライドレールタイプ 瓦揚げ機 ウインチ
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
シンフォニティ株式会社(SYMPHONITY , Inc.) 会社説明・人材採用資料
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!ショッピング商品検索を組み合わせて、複数のショッ ピングサイトから商品を検索するアプリを作ってみましょう。