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カンファレンス2016 初心者セッション
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Hideo Kashioka
November 03, 2016
Technology
8.5k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
PHPカンファレンス2016 初心者セッション
Hideo Kashioka
November 03, 2016
More Decks by Hideo Kashioka
See All by Hideo Kashioka
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
410
PHP初心者セッション2026 〜ChatGPTと学ぶ、新時代のPHP入門〜
kashioka
1
130
PHP CLIを使って日々の業務を楽に
kashioka
2
470
PHP初心者セッション〜ChatGPTでゼロから動くプログラムを生み出そう!〜
kashioka
0
200
PHPCON_TOKYO_2019_Bigginer.pdf
kashioka
0
1.1k
ここからはじめるDevOps
kashioka
0
120
DevOpsへの準備 便利なサービスで開発効率アップ -開発のためのSaaS利用の実際-
kashioka
0
340
PHP初心者セッション2017
kashioka
1
4k
どこからはじめるDevOps
kashioka
0
150
Other Decks in Technology
See All in Technology
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
240
地域 SRE コミュニティ最前線 / SRE NEXT 2026 Discussion Night Track C
muziyoshiz
0
230
公式ドキュメントの歩き方etc
coco_se
1
120
Amazon EVS で VCF 9.0 / 9.1 のサポート開始まとめ
mtoyoda
0
310
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
110k
Genie Ontologyは銀の弾丸かを考える / Is Genie Ontology a Silver Bullet?
nttcom
0
380
End-to-Endで考える信頼性 —LINEアプリにおけるクライアント開発×SRE連携の実践
maruloop
4
4.5k
CSに"SLO"は要らない、経営層に"99.9%"は伝わらない - SREを全社に"翻訳"する3原則
cscengineer
PRO
1
4.9k
「最後に責任を取るのはチーム」— 人間のPRレビューを最小化してアップデートしたメンタルモデル
jnishime_dresscode
0
860
Data + AI Summit 2026 イベントレポート: 「AIがビジネスで意思決定するデータ基盤」へ
nek0128
0
250
個人開発で育てる「大規模設計の苗床」 - AI時代の1人開発から始める業務への知識接続 / The Seedbed for Large-Scale Design - From AI-Era Solo Projects to Professional Knowledge
bitkey
PRO
1
270
美しいコードを書くためにF#を学んでみた話
yud0uhu
1
450
Featured
See All Featured
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
220
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Thoughts on Productivity
jonyablonski
76
5.2k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
870
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
230
Building Applications with DynamoDB
mza
96
7.1k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
340
[SF Ruby Conf 2025] Rails X
palkan
2
1.2k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
170
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
10k
Transcript
PHPΧϯϑΝϨϯε2016 PHPॳ৺ऀηογϣϯ ຊPHPϢʔβձ ༗ݶձࣾΞϦʔϓ ദԬɹलஉ
ΞδΣϯμ ࣗݾհ PHPͷจ๏ ࣮ફฤ ͓·͚
ࣗݾհ ༗ݶձࣾΞϦʔϓ WEBγεςϜ։ൃ ͦΕʹ·ͭΘΔͯ͢ ಛʹՐফ͠Λߦ͏͜ͱ͕ଟ͍Ͱ͢
PHPͱ
PHPͱ PHP is a popular general-purpose scripting language that is
especially suited to web development. Fast, flexible and pragmatic, PHP powers everything from your blog to the most popular websites in the world. http://php.net/ΑΓ
PHPͱ WEB։ൃʹదͨ͠ݴޠ
PHPͷྺ࢙ 1994ʹRasmus͕ΦϯϥΠϯͰެ։͍ͯ͠Δܦྺॻ ͷΞΫηεཤྺΛௐΔͨΊʹΘΕ͍ͯ·ͨ͠ ൴ͦͷεΫϦϓτ܈ΛʮPersonal Home Page Toolsʯͱ໊͚·ͨ͠ɻ http://php.net/manual/ja/history.php.php
PHPͷڥ
LAMP LAPP LEMP Linux Apache MySQL PHP Linux Apache Postgre
PHP Linux Nginx MariaDB PHP ݺͼํ OS+Web Server+Database+Script
ͲΜͳڥͰ͡ΊΔ͔
AWS Microsoft Azure Google App Engine IBM Softlayear
ϗεςΟϯά Ϩϯλϧαʔό
Ծڥ Vmware VirtualBox
खܰʹ͡ΊΔͳΒ XAMPP MAMP
αʔόʔ͍Βͣ cloud9 http://c9.io https://ide.c9.io/kashioka/test
ڥࢥ͍ͷ֎͙͢ʹͰ͖·͢ɻ ͥͻɺࢼͯ͠Έ·͠ΐ͏ɻ
PHPͷ֓ཁ
PHPͷجຊ PHPͷจ๏ײతͰ͢ɻ ଞͷݴޠΛ͍ͬͯͳ͍ํ͕ށ͍·ͤΜɻ WEBߏஙʹ࠷దͳݴޠͰ͢ɻ ࣌ʹ࣮Ͱ͏ʹ৭ʑग़͖ͯ·͢ ※ݸਓͷײͰ͢
PHPλά <?php ?>ɹPHPϞʔυ; HTMLͷλάͷΑ͏ͳΠϝʔδ;
<html> <body> <?php echo "͜Μʹͪ"; ?> </body> </html> Ұ൪͔ΜͨΜͳαϯϓϧ http://localhost:8888/1st.php
֦ுࢠ ϑΝΠϧ໊.php
ߏจ ม$Ͱ࢝·Δ; จ;ͰऴΘΔ ܕએݴͳͲݫີʹߦΘͳͯ͘OK͕ͩޙʑ ໘…… ؆୯ͳαϯϓϧΛݟͯΈ·͠ΐ͏
<?php $a = '͜Μʹͪ'; echo $a;
PHP͔ΒHTMLग़ྗ
<?php echo "<html>"; echo "<body>"; echo "͜ΕPHPͰ͢"; echo "</body>"; echo
"</html>"; http://localhost:8888/sample0.php
݁߹ͨ͠Γܭࢉͨ͠Γ .(υοτʣΛͬͯจࣈྻͷ݁߹ ͕Ͱ͖·͢ɻ ͷԋࢉ+-*/
<?php $a = 1; $b = 2; echo $a +
$b; echo '<br>'; echo $a . $b; http://localhost:8888/sample4.php
<?php $a = "phpcon"; $b = 2015; echo $a .
"/" . $b + 1; http://localhost:8888/sample2.php
PHPͷؔ εΫϦϓτݴޠͷؔ͠Έ͍͢ ͳΜͱͳؔ͘Λ͍֮͑ͯΕOK if foreach strlen htmlspecialchars nl2br mb_convert_encording
if ʙ else (endif) ݅ఆΛߦ͏ ݅Λຬͨ͢ຬͨ͞ͳ͍ͷஅΛߦ͏
<?php if($a) { echo '݅Λຬͨ͢'; } else { echo '݅Λຬͨ͞ͳ͍';
} http://localhost:8888/if.php
<div> <?php if($a): ?> <div id='a'>ຬͨ͢</div> <?php else: ?> <div
id=''>ຬͨ͞ͳ͍</div> <?php endif; ?> </div> http://localhost:8888/div.php
HTMLΈࠐΈܕͷαϯϓϧ Wordpressͷ߹ wp-content/themes/twentysixteen/ header.php
foreach <?php $numbers = array('2','3','4','5','6'); foreach($numbers as $val) { echo
$val; }
htmlspecialchars ˍ"'<>ͱ͍ͬͨHTMLͰҙຯ͋ΔจࣈΛhtmlͷදࣔܗ ࣜʹม͢Δ = javascriptɺෆਖ਼ͳsql࣮ߦʹΑΔηΩϡϦςΟʔϦ εΫΛճආ͢Δɻ ೖྗ͞Εͨσʔλग़ྗ͢Δલʹඞͣ htmlspecialcharsΛ௨͢
htmlspecialchars <?php $new ="<a href='test'>Test</a>"; echo $new; <?php $new ="<a
href='test'>Test</a>"; echo htmlspecialchars($new,ENT_QUOTES); http://localhost:8888/sample3.php
ϑΝΠϧͷಡΈࠐΈ htmlͷྔ࢈ʹศར
require_once <?php require_once('header.html'); require_once('body.html'); require_once('footer.html'); http://localhost:8888/require.php
Λऔಘ͢Δ ೖྗϑΥʔϜ͔Βೖྗ͞Εͨ $_POST http://localhost:8888/get.php?id=123456 $_GET
ͷऔಘ <?php echo $_GET['id']; echo $_POST['id'];
ͷ֬ೝ var_dump()
͜Ε͘Β͍Θ͔ΕOK PHPͷΦϯϥΠϯϚχϡΞϧͷॆ࣮͕ੌ͍ PHPͷྺ࢙ ݴޠϦϑΝϨϯε
࣮ફฤ ੈքͷਓޱϥϯΩϯάΛදࣔ͢ΔϖʔδΛ࡞ͬͯ
σʔλΛ୳͢ ϓϩάϥϜͰѻ͏ͨΊʹCSVTSVͱ͍ͬͨσʔλ ͕खؒΛল͚Δ ΤΫηϧσʔλͰCSVʹग़དྷΔ http://data.worldbank.org/data-catalog/Population- ranking-table
CSVΛಡΈࠐΉ ໊͕ؔΘ͔Βͳ͚ΕͱΓ͋͑ͣݕࡧ
fgetcsvͬͯͷ͕ݟ͔ͭͬͨ http://php.net/manual/ja/function.fgetcsv.php ͕ΜͬͯಡΉͱΘ͔Δ Θ͔Βͳ͚ΕαϯϓϧΛ
αϯϓϧΛͬͯΈΔ ಈ͔ͯ͠ΈΔ http://localhost:8888/1.php csvΛࠩ͠ସ͑ΔͱɺͳΜ͔ग़ͯΔ Θ͔Βͳ͍ͱ͜ΖௐΔ
ௐͯΈͨΒ fopen — ϑΝΠϧ·ͨ URL ΛΦʔϓϯ͢Δ whileϧʔϓɺPHPͰ࠷؆୯ͳλΠϓͷϧʔϓͰ͢ɻ count — มʹؚ·ΕΔͯ͢ͷཁૉɺ
͋Δ͍Φϒ δΣΫτʹؚ·ΕΔԿ͔ͷΛ͑Δ fclose — Φʔϓϯ͞ΕͨϑΝΠϧϙΠϯλΛΫϩʔζ͢Δ ͜ΕΛ౿·͑ͯ
ͳΜͱͳ͘Θ͔ͬͨ
৭ʑௐͯ͠ΈΑ͏ ͕࣌ؒͳ͍ͷͰׂѪͰ͢ http://localhost:8888/fgetcsv.php
<table border=1> <?php ini_set('display_errors',1); $row = 1; if (($handle =
fopen("POP.csv", "r")) !== FALSE) { while (($data = fgetcsv($handle, 1000, ",")) !== FALSE) { if($data[3]) { echo "<tr>"; echo "<td>" . htmlspecialchars($data[3],ENT_QUOTES) ."</td><td>" . htmlspecialchars($data[4],ENT_QUOTES) . "</td>"; echo "</tr>"; } } fclose($handle); } ?> </table>
ͳΜͱͳ͘ग़དྷͦ͏ͳؾ͕͠·ͤΜ͔ʁ php.netΛݟͳ͕ΒؤுͬͯΈ·͠ΐ͏
֤Ͱ։࠵͞Ε͍ͯΔPHPΧ ϯϑΝϨϯε
࠙ձ ଞͷ։ൃऀεϐʔΧʔͱ͢νϟϯε!
͓קΊॻ੶ ʮ͍ͪΜ͍͞͠PHPͷڭຊʯࢲ͕ॻ͍͍ͯ·͢ɻ ͍·ԿΛ࡞͍ͬͯΔͷ͔Λߟ͑Δ ࣗͰߟ͑Δྗ͕ͭ͘ ਖ਼ޡදΛ͝ࢀߟʹ͍ͯͩ͘͠͞m(__)m
·ͱΊ PHPͷϚχϡΞϧΛੋඇ׆༻͠·͠ΐ͏ ग़ྗʹҙ͠·͠ΐ͏ɻ ೖॻΑ͘બͼ·͠ΐ͏w ා͕͍͚ͬͯ·ͤΜ ༐ؾΛ࣋ͬͯɺΠϯλʔωοτ্ʹϓϩάϥϜΛެ։͠ ͯΈ·͠ΐ͏ɻ
ͱʹ͔͘ॻ͍ͯΈΔʂ Ҏ্
͝੩ௌ͋Γ͕ͱ͏͍͟͝·ͨ͠ɻ ΧϯϑΝϨϯεΛָ͠ΜͰ͍ͩ͘͞ʂ
PHPॳ৺ऀηογϣϯ ༗ݶձࣾΞϦʔϓ ദԬɹलஉ twitter,facebook @kashioka
None