質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

Q&A

解決済

1回答

662閲覧

connpass apiが取得できていない?

yukkys

総合スコア42

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

API

APIはApplication Programming Interfaceの略です。APIはプログラムにリクエストされるサービスがどのように動作するかを、デベロッパーが定めたものです。

0グッド

0クリップ

投稿2017/12/12 07:09

編集2017/12/12 09:32

###前提・実現したいこと
connpass(https://connpass.com/about/api/)のapiを使用して、ユーザーが求めたキーワードに沿って検索、表示したい

###発生している問題・エラーメッセージ
apiからのjsonがゲットできていない?
変数に入れてそれを表示しながらデバッグしているが、該当箇所が表示されない。(おそらくうまく取得できていない)
$url='https://connpass.com/api/v1/event/?keyword=python';
にアクセスするぶんには問題ありません。

###該当のソースコード

//debug()関数は第一引数が[タイトル]、第二引数が変数の中身 $url='https://connpass.com/api/v1/event/?keyword=python'; debug('$url', $url); $connpass=file_get_contents($url); debug('$connpass', $connpass);

表示結果は
[$url]
https://connpass.com/api/v1/event/?keyword=python

[$connpass]

↑空

###補足情報(言語/FW/ツール等のバージョンなど)
PHP5.6.30, connpass API

//TECH PLAY API使用の場合(動作確認済み)

php

1$tech_token='testtesttesttesttest'; 2 $tech=load('https://api.techplay.jp/v1/ranking/event?token='.$tech_token); 3 4 debug('$tech', $tech->ranking); 5 6 $text="■TECH PLAYのランキング■\n"; 7 $text="=============================\n"; 8 9 foreach ($tech->ranking as $r) { 10 $text.=$r->rank.' '.$r->title."\n"; 11 $text.=$r->description."\n"; 12 $text.='最寄駅:'.$r->station."\n"; 13 $text.=$r->event_url; 14 $text.="\n-----------------------------------\n"; 15 16 if($r->rank == "5"){ 17 break; 18 } 19 } 20

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

追記

こちらのコードでも、問題なく取得できましたね…

php

1$url='https://connpass.com/api/v1/event/?keyword=python'; 2$connpass=file_get_contents($url); 3var_dump(json_decode($connpass));

debugの中身が分かりませんが、json_decodeした値を表示したら変わるのではないでしょうか?

apiで情報を取得する場合のサンプルです

php

1 $url = "https://connpass.com/api/v1/event/?keyword=python"; 2 $curl = curl_init(); 3 curl_setopt($curl, CURLOPT_URL, $url); 4 curl_setopt($curl, CURLOPT_CUSTOMREQUEST, 'GET'); 5 curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); 6 curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false); // 証明書の検証を行わない 7 8 $result = curl_exec($curl); 9 curl_close($curl); 10 var_dump(json_decode($result,true));

投稿2017/12/12 07:26

編集2017/12/12 07:34
motuo

総合スコア3027

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yukkys

2017/12/12 09:34

両方試しましたが空欄のままですね。 motuoさんと同じコードでも私の方では動かないのがよくわからないです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問