Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
PHPとmBaaSの美味しい関係
Search
KOYAMA Tetsuji
May 21, 2016
Technology
1
2.9k
PHPとmBaaSの美味しい関係
2016年5月21日のPHPカンファレンス福岡2016で発表した資料です。
KOYAMA Tetsuji
May 21, 2016
Tweet
Share
More Decks by KOYAMA Tetsuji
See All by KOYAMA Tetsuji
PIE (PHP Installer for Extensions) をみんなで試そう/piseka-pie
koyhoge
0
68
君はPostScriptなウィンドウシステム 「NeWS」をご存知か?/sunnews
koyhoge
0
850
全日本PHPカンファレンス2024スタンプラリーについて/stamprally-php2024
koyhoge
0
170
日本PHPカンファレンス2024スタンプラリーとその実装/phpcon-stamprally
koyhoge
1
1.5k
日本のPHPカンファレンスの歩みと、その辺もろもろ/phpcon_japan_history
koyhoge
0
290
Inside SWOOLE: 非同期処理はどのようにして動くのか/inside_swoole
koyhoge
0
19k
映画を年300本観る技術/watch_300_movies_in_a_year
koyhoge
0
1.2k
Swooleで実装するPHP非同期処理の世界/phpcondo2019-swoole
koyhoge
3
5.3k
CloudFormation と FaaS のはざま - Kubernetes の設計思想を探る -/cf-faas-k8s
koyhoge
0
1.5k
Other Decks in Technology
See All in Technology
開発生産性を測る前にやるべきこと - 組織改善の実践 / Before Measuring Dev Productivity
kaonavi
10
4.6k
生まれ変わった AWS Security Hub (Preview) を紹介 #reInforce_osaka / reInforce New Security Hub
masahirokawahara
0
470
AIの全社活用を推進するための安全なレールを敷いた話
shoheimitani
2
520
ビズリーチにおけるリアーキテクティング実践事例 / JJUG CCC 2025 Spring
visional_engineering_and_design
1
120
MUITにおける開発プロセスモダナイズの取り組みと開発生産性可視化の取り組みについて / Modernize the Development Process and Visualize Development Productivity at MUIT
muit
1
16k
United airlines®️ USA Contact Numbers: Complete 2025 Support Guide
unitedflyhelp
0
310
Tokyo_reInforce_2025_recap_iam_access_analyzer
hiashisan
0
190
LLM時代の検索
shibuiwilliam
2
160
Enhancing SaaS Product Reliability and Release Velocity through Optimized Testing Approach
ropqa
1
230
Glacierだからってコストあきらめてない? / JAWS Meet Glacier Cost
taishin
1
160
Sansanのデータプロダクトマネジメントのアプローチ
sansantech
PRO
0
160
What’s new in Android development tools
yanzm
0
310
Featured
See All Featured
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
35
2.4k
Bash Introduction
62gerente
613
210k
Building Flexible Design Systems
yeseniaperezcruz
328
39k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.8k
Producing Creativity
orderedlist
PRO
346
40k
Java REST API Framework Comparison - PWX 2021
mraible
31
8.7k
Imperfection Machines: The Place of Print at Facebook
scottboms
267
13k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.6k
Testing 201, or: Great Expectations
jmmastey
43
7.6k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
5.9k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
130
19k
Transcript
1)1ͱN#BB4ͷ ඒຯ͍ؔ͠ খࢁࢤ !LPZIPHF 1)1ΧϯϑΝϨϯεԬ
BCPVU͍͜΄͛ ‣খࢁࢤ ͜·ͯͭ͡ ‣ϑϦʔϥϯεϓϩάϥϚʔ ‣!LPZIPHF ‣χϑςΟΫϥυNPCJMFCBDLFOE ΤόϯδΣϦετ ‣ࠓظͷΠνΦγΞχϝ ʮ3Fθϩ͔Β࢝ΊΔҟੈքੜ׆ʯ
Θͨ͠ͱN#BB4 ‣ࡢՆΑΓχϑςΟΫϥυNPCJMFCBDLFOE ΤόϯδΣϦετ ‣"OESPJE4%,Wͷॳظ։ൃʹؔΘΔ ‣ϒϩάهࣄΛ͍͔ͭࣥ͘ච ‣ษڧձɾΧϯϑΝϨϯεͰͷN#BB4ൃදճ
N#BB4 ϞόΠϧόοΫΤϯυ ΞζΞαʔϏε
#BB4 ‣1BB4ͷҰछͱݴ͑Δ ‣αʔόଆػೳҰࣜΛ"1*Խͯ͠ఏڙ ‣εέʔϧʹࣗಈରԠ ‣֤छཧػೳ ‣8FCμογϡϘʔυ ‣ϝʔϧͦͷଞͷ௨
N#BB4 ϞόΠϧ
ϞόΠϧ։ൃͷಛ ‣αʔόαΠυٕज़ʹৄ͘͠ͳ͍ ਓ͍Δ ‣εέʔϧରԠͱ͔উखʹͬͯ΄͍͠ ‣ϞόΠϧ͚ʹಛԽͨ͠ػೳ ‣ϓογϡ௨ ‣Ґஔใ ‣ՄೳͳΒαʔόϨεͰ͍͖͍ͨ
None
N#BB4Λ Ͳ͏ͬͯ͏ͷ͔
4%, ‣J04ɺ"OESPJEͦΕͧΕʹ༻ҙ͞Ε͍ͯΔ ‣J04TXJGUधཁ͕ߴ·͍ͬͯΔ ‣αʔϏεʹΑͬͯͦΕҎ֎ ‣+BWB4DSJQU /PEF )5.- ‣$ 6OJUZ
‣1)1 ‣3&45"1*
N#BB4Ͱ Կ͕Ͱ͖Δͷ͔
N#BB4ͷػೳ ‣σʔλϕʔε ‣Ϣʔβʔೝূ ‣ϑΝΠϧετϨʔδ ‣ϓογϡ௨ ‣ͦͷଞ ‣ߦಈղੳɺΫϥογϡϨϙʔτɺαʔόϩδο ΫɺͳͲͳͲʜ
σʔλϕʔε ‣σʔλετΞɺϦΞϧλΠϜ%#ͳͲͱݺΕΔ ‣ΩʔόϦϡʔετΞతͳߴ%# ‣ಠࣗͷΫΤϦػೳ ‣"1*Λݺͼग़͚ͩ͢ͳͷͰɺεέʔϧউखʹߦ ΘΕΔ ‣ͪΖΜαʔόӡ༻ඞཁͳ͍
Ϣʔβೝূ ‣ొϢʔβͷཧ ‣,74తʹҙͷଐੑΛࢦఆՄೳ ‣0"VUIೝূαϙʔτ͢Δ߹ ‣άϧʔϓɺ"$-ػೳΛ࣋ͭ߹͋Δ
ϑΝΠϧετϨʔδ ‣େ͖Ίͷσʔλͷอଘॴ ‣ը૾ύονσʔλͳͲ ‣"NB[PO4తͳͷ ‣"$-Λ࣋ͭ߹
ϓογϡ௨ ‣ϓϥοτϑΥʔϜ͝ͱͷҧ͍ ‣J04"1/4 "QQMF1VTI/PUJGJDBUJPO 4FSWJDF ‣"OESPJE($. (PPHMF$MPVE.FTTBHJOH ‣େྔʹૹΔʹϊϋ͕͍Δ
‣ಉ࣌৴ɺݸผ৴ ‣͜ͷͨΊ͚ͩʹN#BB4Λ͏ਓଟ͍
ͦͷଞ ‣αʔόϩδοΫ͕໘ന͍ ‣"NB[PO-BNCEB "[VSF'VODUJPOTͳͲ ‣"1*ͰΩοΫͤͯ͞Ұ࿈ͷॲཧΛόονతʹ ‣Ϣʔβʔߦಈղੳ͜Ε͔Βϗοτ ‣ͦΕઐͷαʔϏε͋Δ
N#BB4 ࠷ۙͷτϐοΫ
1BSTFͷαʔϏεऴྃ ‣'BDFCPPLʹങऩ͞ΕͨN#BB4քͷڊਓ ‣݄ʹαʔϏεΛશऴྃ ‣1BSTF4FSWFSΛ044ͱͯ͠ެ։ ‣Ҡߦɺӡ༻ͷϊϋͷใަ͕ίϛϡχςΟ ͰΜ ‣ࠃͰࠔ͍ͬͯΔࣄۀձࣾଟ͍
(PPHMF'JSFCBTF ‣݄ʹ(PPHMFʹങऩ ‣(PPHMF*0ͰαʔϏε༰ͷେ෯มߋ ‣"OBMZUJDTແঈɾແ੍ݶ ‣ϓογϡ௨ແঈɾແ੍ݶ ‣Ϋϥογϡղੳແঈɾແ੍ݶ ‣ϓϥϯγϯϓϧʹ ‣ແঈɺ݄ɺैྔ
χϑςΟΫϥυ NPCJMFCBDLFOE ‣χϑςΟ͕͍ͬͯΔN#BB4αʔϏε ‣௨শ/$.# ‣ࠃͰେखʹೖΔ ‣ઈࢍʮ1FSTFຽͷۦ͚ࠐΈࣉʯԽͯ͠Δ ‣ʮޚࣾ1BSTFͷΑ͏ʹ͍͖ͳΓαʔϏεଧͪ ͬͨΓ͠ͳ͍Ͱ͢ΑͶ ʯ
Կ͕Ͱ͖Δͷ ‣ձһཧɾೝূ ‣εϚϗͷϓογϡ௨ ‣σʔλετΞ ‣,74తͳͷ ‣ϑΝΠϧετΞ ‣ΦϒδΣΫτετϨʔδ ‣Ґஔใݕࡧ ‣/PEFϞδϡʔϧ࣮ߦ /FX
/$.#4%, ‣J04 0CKFDUJWF$ ‣"OESPJE +BWB ‣+BWB4DSJQU /PEF .POBDB
‣6OJUZ $
͏ͪͷݴޠͳ͍ΜͰ͚͢Ͳ ‣3&45"1*͕ެ։͞Ε͍ͯ·͢ɻ ‣ઌ΄Ͳͷ֤ݴޠ༻4%,ɺதͰ3&45"1* Λୟ͍͍ͯΔ͚ͩɻ ‣IUUQNCDMPVEOJGUZDPNEPDDVSSFOU SFTUDPNNPOGPSNBUIUNM
1)1·ͩͰ͔͢ ‣͍͢·ͤΜɺઈࢍ։ൃதͰ͢ɻ ‣/$.#ͷશػೳʹରԠ༧ఆ ‣1)1Ҏ߱ʹରԠ ‣͏TIPSUBSSBZTZOUBYͰ͍͍ΑͶ
༻ྫσʔλετΞͷอଘ <?php use Ncmb\NCMB; use Ncmb\Object; try { $appkey =
'xxxxxxxx'; $clientkey = 'yyyyyyyy'; NCMB::initialize($appkey, $clientkey); $className = 'myClass'; $object = new Object($className); $object->key1 = 'a'; $object->key2 = 'b'; $object->save(); } catch (Exception $e) { die($e->getMessage()); }
༻ྫσʔλετΞͷݕࡧ <?php use Ncmb\NCMB; use Ncmb\Query; try { $appkey =
'xxxxxxxx'; $clientkey = 'yyyyyyyy'; NCMB::initialize($appkey, $clientkey); $className = 'myClass'; $query = new Query($className); $query->equalTo('key1', 'a'); $results = $query->find(); var_dump(count($results)); // 1 } catch (Exception $e) { die($e->getMessage()); }
ྫ͑ͷ͍ॴ ‣ඇৗʹଟ͘ͷඇߏԽσʔλΛѻ͏ ‣%#αʔόͷ͓कΓͨ͘͠ͳ͍ ‣ඇৗʹଟ͘ͷϢʔβʔΞΧϯτΛѻ͏ ‣σʔλ୯ҐͰࡉ͔͘ΞΫηε੍ޚΛ͢Δ ‣େྔͷϓογϡ৴ΛԆͳ͘Γ͍ͨ
Ͱ͓ߴ͍ΜͰ͠ΐ͏ ‣͓ࢼ͠ແྉϓϥϯ͋Γ·͢ ‣"1*ϦΫΤετສճ݄ ‣ϓογϡ௨৴ສճ݄ ‣ετϨʔδΤϦΞ(# ‣εΫϦϓτ"1*ίʔϧճ݄ ‣͔ͦ͜Β্ສԁ݄ͷ&YQBSUϓϥϯ
·ͱΊ ‣N#BB4ϞόΠϧͷͨΊʮ͚ͩʯͷαʔϏε ͡Ό͋Γ·ͤΜ ‣͏·͘ར༻ͯ͠ඞཁͳ෦͚ͩΛ֎ग़͠Ͱ͖Δ ‣/$.#1)14%,·ͩ։ൃத ‣͏গ͠ػೳ࣮Ͱ͖ͨΒެ։͠·͢