【PHP】下らねぇ質問はここに書き込みやがれ 8 [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
2017/03/15(水) 00:41:22.79ID:ko4BTSP20
PHPに関する下らない質問用避難スレです。
まず読むこと【PHPマニュアル】
http://www.php.net/manual/ja/

前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 7
http://echo.2ch.net/test/read.cgi/tech/1478657006/

次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

次スレを立てる時は本文の1行目に以下を追加して下さい
!extend:on:vvvvv:1000:512
VIPQ2_EXTDAT: default:vvvvv:1000:512:----: EXT was configured
2017/04/01(土) 07:09:38.94ID:6GQ7oWyp0
>>126
レスありがとうございます。
ちょっとそれだと自力感が強くて、some_fnの引数が可変だったり場合も応用がききづらいですね。
evalを思い出したので、入力も自分が用意するもので外部由来ではないので、他の方法思いつくまでevalで代用しておきます。

$a = [1,2,3,4];
$a = 'return some_fn('.implode(',',$a).');';
eval($a);
2017/04/01(土) 12:55:18.33ID:bQQZERCB0
some_fn(...$a);

PHP5.6からだけど
http://php.net/manual/ja/migration56.new-features.php
2017/04/01(土) 13:09:39.78ID:8fiaXEF90
またeval()厨かよ… ほんと死なねぇかな…
2017/04/01(土) 18:01:50.26ID:6GQ7oWyp0
>>128
おー出来るようになってたんですね。
PHP5.4だったので早速アップデートしてみます。
ありがとうございました。
2017/04/02(日) 12:56:35.27ID:j7pqXAosa
【OS名】Debian 8
【PHPのバージョン】7.0
【連携ソフトウェア】なし
【質問内容】
あるクラス(仮にMy)のメソッド(同my())があるとします
Threadを継承したクラス(仮にMyThread)のインスタンスをstart()する式が中にあるmy()をコールしたとき、
生成したスレッドの終了を待たずにmy()を終了する方法はありますか?

class MyThread extends Thread {
function run() { echo "start!\n"; sleep(3); echo "stop!\n"; }
}

class My {
function my() { $thread = new MyThread(); $thread->start(); }
}

$my = new My();
$my->my();
echo "here!/n";

で start!->stop!->here! を start!->here!->stop! のようにしたいのです。
2017/04/02(日) 17:07:14.61ID:sKaMUxEO0
PHPで簡易掲示板作成して公開してみたら英語ロシア語のスパム投稿が殺到するようになった
さっそくkcaptchaというツール使って画像認証機能付きに改造してみたんだけどそれでも
スパムが殺到するんだわ。

結局日本語以外の投稿は片っ端から破棄する方式に変えて対処できるようになったけど
それでも飽きずに投稿を試みてくるんだよw

ああいう画像認証突破って人海戦術で投稿してるんだろ?
拒絶されまくってるのによう飽きずに何度もチャレンジしてくるわな
ご苦労さんとしか言いようが無いw
133デフォルトの名無しさん (ワッチョイ 3fcb-jsM4)
垢版 |
2017/04/02(日) 22:44:17.53ID:q06cgQNJ0
>>131
Worker使ってPoolに放り込む
但しWorkerも別スレッドなので処理順序に関しては保証出来ない(自分の環境だと"here"が最初になる)

どうしても実行順序を揃えたければPoolのsubmitメソッドをオーバーライドしてparent::submitコール後にウェイト掛けるようにすればいい

書けなかったのでideone
ttps://ideone.com/tzpULt
2017/04/02(日) 23:32:30.74ID:0XahTNwQa
>>133
here!とstart!は前後しても大丈夫です。Poolを使えばいいのですね。ありがとうございます。
2017/04/04(火) 12:37:21.30ID:qjHKdF5aa
SQLを変数に格納するとき職場だと
$sql ="";
と初期化してからSelect文やらを代入し始めるのですがこれには何か意味があるんですか?
2017/04/04(火) 13:21:18.91ID:pyoNKlrCH
>>135
> と初期化してからSelect文やらを代入し始めるのですがこれには何か意味があるんですか?
文字列接続でSQLを組み立てるときに、SQLがずれないという微妙なメリットがあるといえばある。
$sql = 'SELECT ...';
$sql .= 'FROM ...'

$sql = '';
$sql .= 'SELECT ...';
$sql .= 'FROM ...';
の違い。

ちなみに俺はヒアドキュメントを使う。
137デフォルトの名無しさん (ワッチョイ cf1f-aC9I)
垢版 |
2017/04/04(火) 14:11:57.70ID:cKMtDqYa0
意味はないだろ。
変数は初期化してという職場ルールとかだろ。
2017/04/04(火) 14:23:47.22ID:pyoNKlrCH
なるほど、こういう場合もありえるか。

http://php.net/manual/ja/language.variables.basics.php
> 初期化されていない変数のデフォルト値に依存すると、そのファイルを
> include している別のファイルで同名の変数が使用されていた場合などに
> 問題を起こします。
> また、register_globals が on の場合には重大なセキュリティリスク
> を抱えることになります。
2017/04/05(水) 16:35:03.35ID:UwNB2dkTp
>>136
もちろんそうよ
2017/04/17(月) 09:34:31.70ID:Exr9QGEtM
名前空間使わないとかクソだし
register_globalsがonの環境自体がクソだし
もっと手前のことを考えるべきだろうけど
2017/04/20(木) 22:12:15.98ID:4IA48rrn0
PHPでゲーム開発って今どんな感じ?
まだ、現役で使える?
2017/04/20(木) 22:23:53.27ID:AQO4u6SrM
PHPしかできないならさすがに仕事はない
と元ゲームメーカープログラマの俺は思う
2017/04/22(土) 21:29:12.02ID:1HwydCHr0
携帯ゲーム開発やってたの?
144デフォルトの名無しさん (ワッチョイ fab4-t9GM)
垢版 |
2017/04/23(日) 20:03:20.59ID:TnE9jJi/0
質問させて頂きます。

PHPを使った簡単な選択ゲームを作成していまして、最初に名前(フォーム)を入力してもらい、以降のページでradio
ボックスを使って選択していく感じです。
クリア画面で最初のページで入力した名前(フォーム)を表示するにはどういったやり方がよろしいでしょうか?
145デフォルトの名無しさん (ワッチョイ 8f6e-HDOw)
垢版 |
2017/04/23(日) 21:59:06.82ID:Xx5iQvLa0
cookieがいいかと思います
2017/04/23(日) 22:07:04.98ID:aYUOvvWi0
普通セッションじゃないかな
2017/04/24(月) 08:48:00.52ID:aR8VAoat0
そんな初心者のあなたにはお手軽hidden
2017/04/24(月) 19:43:35.52ID:BQYXkJHP0
秘伝
149デフォルトの名無しさん (ワッチョイ 5bf3-KYNw)
垢版 |
2017/04/27(木) 21:37:03.43ID:rGgHpPcN0
php7 に uuidライブラリを導入したのですが、sudoでしか受け付けてくれません
インストールはpecl install uuidで入れたのですが、root以外はじかれて、ページ上では500エラーとなります

なにか間違っているんでしょうか?
2017/04/27(木) 22:22:51.23ID:GJNrvvrA0
特定のアプリを使える、group を追加すれば?
2017/04/27(木) 22:28:40.20ID://GaaF5M0
>>149
メンテナンスされてないエクステンション使うよりメンテナンスされてるライブラリ使った方がいいよ
https://github.com/ramsey/uuid
2017/04/29(土) 09:36:48.80ID:gwV/3/wJ0
root使えないならcomposerで導入できるライブラリ探せ
>>151でまず問題ないはず
153デフォルトの名無しさん (ワッチョイ 0ff7-WBDQ)
垢版 |
2017/04/30(日) 11:15:07.30ID:pYQ+I2xN0
PHP5でアンケートページを作りました。
「アンケート入力」の画面で送信ボタンをおしてページ移動を
しています。パソコンとマックのブラウザからはちゃんと
動作している(アンケート画面が移動する+MySQLにも書き込みが
されている)のですが、iPhoneのLINEからアクセスするとエラーが
出てしまいます。AndroidのLINEではエラーがでません。

iPhoneを持ってないので確認が難しいです。
googleで検索してもアプリ内ブラウザの違いのようなのですが、
具体的に何が原因なのかわかりません。

なにか注意点とかiPhoneのLINEだとこれはダメだなどありましたら
教えて頂けないでしょうか。よろしくお願いします。
2017/04/30(日) 11:40:09.81ID:nYTyUlyB0
せめてエラーログの内容くらい書いてほしい
iPhoneの場合は純粋のブラウザ(safari)でアクセスするのと、
アプリ内ブラウザで立ち上がるブラウザ(webview)が違う
例えばwebviewの場合はcookieを保存しないなど、ちょっと挙動が違うところもある

てか、開発するのにiPhoneの実機ないとはさすがにだめじゃね?
2017/04/30(日) 11:42:39.41ID:nYTyUlyB0
ちょっと雑に書いてしまったが、
cookieの件はアプリを終了すると消すという意味だから、
一時的に使うだけなら問題ないはず
2017/05/04(木) 20:08:49.82ID:MlwtpNm00
foreachで最後の一つ前にifを使いたいんだけど
何かいい方法ない?
2017/05/04(木) 23:16:53.77ID:MlwtpNm00
ないっぽいのでforでやります。
ありがとうございました。
2017/05/06(土) 12:08:30.95ID:6B+jWue50
webアプリケーションフレームワークのスレはこの板ではなく別の板でしょうか
159デフォルトの名無しさん (ワッチョイ 76e2-kKGB)
垢版 |
2017/05/06(土) 23:02:40.18ID:6iamBiJv0
【OS名】Win7-Pro
【PHPのバージョン】5.6.28 (XAMPP v.3.2.2)
【連携ソフトウェア】ブラウザはFirefoxかChrome

【質問内容】
JavaScriptでPHPを起動し、これに処理をさせ返ってきた値を受け取りたいです。
参考にしたのは http://wpcos.com/?p=13945

上のHPのJSとPHPのコードを丸コピーして Chrome57.0で実行させたところ下記のようになり
原因が分かりません。 PHPに問題があるようなのでこのスレで聞きました。
http://uproda11.2ch-library.com/e/e00202800-1494078713.png

※XAMPPのApacheは起動済みです
※JSとPHPのファイルはUTF-8で保存済み
※Firefox53.0だと「XML パースエラー: 要素が見つかりません。」が出ます

何かヒントを下さい
2017/05/06(土) 23:14:04.15ID:aphLh83O0
>>159
Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.
って思いっきり書いてあるんだけど?
2017/05/06(土) 23:15:36.45ID:b0MPlxsl0
http://127.0.0.1/_tests/test.html
みたいにアクセスしないと
2017/05/06(土) 23:46:38.71ID:6iamBiJv0
レス有難うございます

>>160
「Cross origin requests are only supported for protocol schemes」自体で調べたところ、
『どうやらChromeではローカルでAjaxは使えない様です』 とのことなのですがFirefoxでも
上記の通りエラーになります。
結局、サーバー上でやった方が早いのでしょうか?


>>161
要求された URL は本サーバでは見つかりませんでした。 もし手入力で URL を入力した場合は、
綴りを確認して再度お試し下さい。
サーバーの障害と思われる場合は、ウェブ管理者までご連絡ください。
Error 404

  と出ます
2017/05/06(土) 23:49:54.73ID:aphLh83O0
>>162
何故JavaScriptもPHPも分からないのに同時にやろうとするのか

サーバを介さずにリクエストして, 一体誰がPHPを実行すると考えている?
2017/05/07(日) 00:09:32.23ID:oPGKh2U00
>>163
サーバーにUpしたらFirefoxとChrome共にOKでした。
お手数をおかけしました。
2017/05/07(日) 00:11:18.55ID:RBu7YsoC0
>※XAMPPのApacheは起動済みです

起動しているなら、ブラウザでhtmlが表示できるんでしょ?
そこに置いてみた?
2017/05/07(日) 00:17:01.17ID:mGKAifTM0
Apacheなんて難し過ぎてきちんと分かってるとは到底思えない
XAMPP使うよりまずはPHPのビルトインサーバで勉強した方がいい
2017/05/07(日) 00:27:20.61ID:oPGKh2U00
>>165
はい。 普段使ってるlocalhostのphp置き場にhtmlとtest.phpを置いています。
htmlの起動はOKですが、ボタンを押すとエラーになります。


>>166
8年位前にやってたときはPHPを単独でインストールしてコマンドプロンプトで
やっていたのですが、PCを変えたときXAMPPなるものを試してみたかったので
2017/05/07(日) 00:50:33.47ID:RBu7YsoC0
>>167
http://uproda11.2ch-library.com/e/e00202800-1494078713.png

ここのエラー表示を見ると、
C:/xampp/htdocs/ tests/test.php
となっているけど、

htdocs の中にあるフォルダ testsって、
先頭に空白文字があるの?何か変だよね?
2017/05/07(日) 01:08:20.14ID:oPGKh2U00
>>168
半角アンダーバーが入っています
2017/05/07(日) 01:30:39.86ID:RBu7YsoC0
test.htmlってブラウザからどのようにリクエストしてます?

http://localhost/_tests/test.html ですか?

もしもそうなら、javascriptのこの部分、
$.get('test.php', を
同じようにフルパス指定にしてみたらどうかな?
2017/05/07(日) 01:50:04.63ID:mGKAifTM0
XAMPPのApacheを止めてそのファイルがあるディレクトリで

$ php -S localhost:8080

とでもしてビルトインサーバを起動して http://localhost:8080/test.html にアクセスした方が早い
2017/05/07(日) 02:58:17.79ID:edBtKeoY0
jQueryは、こういう感じに書く

// 先に全体の設定
$.ajaxSetup({
data: {format: 'xml'},
timeout: 60 * 1000
});

$.ajax( 絶対パス )
.done(function( data, textStatus, jqXHR ) {
console.log('statusCode = ' + jqXHR.status,
' : ' + textStatus );
})
.fail(function( jqXHR, textStatus, errorThrown ) {
console.log('statusCode = ' + jqXHR.status,
' : ' + textStatus );
});
2017/05/07(日) 03:09:40.34ID:edBtKeoY0
CORS(Cross-Origin Resource Sharing)制限

ブラウザでAjax通信を行う際には、同一生成元ポリシー(Same Origin Policy)によって、
Webページを生成したドメイン以外へのHTTPリクエストができないので、
ajax通信のJSONP を使って、出来るようにしている

他にも、ブラウザの制限は厳しくて、
iframe内に、他のドメインのページを読み込んでも、
親側のHTMLからは、それにアクセスできない
2017/05/07(日) 12:31:13.16ID:FH3wsgTg0
JavaScriptはどれぐらい理解してるの?
山登り始めた人がいきなり冬の北アルプス登ろうとしてる感じに見える
2017/05/07(日) 18:30:42.76ID:oPGKh2U00
色々有難うございます。

>>170-171
171さんの方法で試してみます。


>>172
これは http://code.jquery.com/jquery-1.11.0.min.js とかのjQueryを改造する場合の
ことでしょうか?


>>174
JavaScript自体は合計5年くらいの経験があり、たぶん100〜200位のコードを書きましたが
その殆どがローカルで動くもので、また数理的な図形描画や可視化のようなものです。
 例:分子構造のデータを読み込んでSVGライブラリ(Raphaelとか)で3Dベクター描画  とか

PHPも実務経験はありますが、8年くらい前にやったきりで今年になってようやく再度必要性が
生じて、昔の本やコードを引きずり出して再勉強しています。
平たく書くとローカル動作主体でWebやネットワークには弱いです。
2017/05/07(日) 18:44:21.97ID:FH3wsgTg0
まずはPHPとJavaScript別々に勉強を進めてはどうか
特にJavaScriptの通信は非同期処理になるので、
しっかり勉強しないと何をしてるか意味が分からないと思う
Cross origin requestのエラーであたふたするレベルだとちと厳しい
まずはJavaScriptかまさないPHPだけのをしっかり学んでからで良いと思います
2017/05/07(日) 18:46:20.00ID:FH3wsgTg0
あと、本で学ぶなら最新のを買ってきた方がいい
PHPもJavaScriptも8年前からかなり進化してる
実務で使うならなおさら最新のを学んだ方がいい
2017/05/07(日) 18:55:36.55ID:oPGKh2U00
>>176-177
有難うございます。 確かにそうですが、業務上JavaScriptとPHPの連携(連動)が
必要な案件を取りたいので基礎でも良いのでこの連動を実現したかったです。

実際の製品にするにはこの分野に強い業者と組むことになりますが、営業で回る前に
「これくらいは自分でやっとかないとアカンだろうなあ」と思いました。

本も「最新の知識以前に基礎が大事」という発想と、過去のコードをベースにして再勉強
したかったので買っていませんでした。 後で本屋を見てみます。
2017/05/07(日) 19:05:10.10ID:FH3wsgTg0
なるほど、立派な営業さんですね
自社製品なのに何も知らんで営業やってるやつがゴロゴロいるからねぇ
連携する部分はあるにせよ、一気に学ぼうとせずに、
ひとつひとつ学んでいく方が近道かと思いますので頑張ってください
2017/05/07(日) 19:12:17.90ID:BH039lXF0
画像にハッシュタグを付け、それに「何かしら識別コード」を関連付けて保存する。
それらを比較することで近しい画像を検索するというようなことがしたい。
この「何かしら識別コード」はなにかいいモノはないでしょうか?
2017/05/07(日) 19:53:43.65ID:YbUbsdG8M
「近しい画像」って何をどう比較して近しいとするの?
それが分からんと何ともアドバイスしにくい気がするけど
2017/05/08(月) 00:17:33.36ID:e9qNdiMD0
SimPixという同一、類似画像を探して、整理を補助するフリーソフトがあるんだけど
これみたいに使いたいのだがどういう原理で比較してるのかわからないのです。
2017/05/08(月) 02:11:52.13ID:WXUx4WWm0
コレとか
ttps://github.com/jenssegers/imagehash
2017/05/08(月) 17:29:24.75ID:e9qNdiMD0
ありがとうございます。
こういうのを探していました。
早速使ってみます。
2017/05/08(月) 18:08:55.09ID:04P2BCNBH
ペチパー(PHPer)って馬鹿にする文脈でしか見たことなかったが、今ではペチパーが普通なのか?
http://wordpress.ideacompo.com/?p=8594
2017/05/08(月) 19:38:22.33ID:DHydgTad0
題:JavaScriptでPHPを起動し、これに処理をさせ返ってきた値を受け取りたい

>>171を試そうと
C:\xampp\htdocs\_tests>$ php -S localhost:8080
としたところ下記が出ました

 '$' は、内部コマンドまたは外部コマンド、
 操作可能なプログラムまたはバッチ ファイルとして認識されていません。

単にcdでディレクトリ移動して $ php -S localhost:8080 ではダメなのですか?
2017/05/08(月) 19:44:45.81ID:LksAbi0u0
windowsとlinuxの違いもわからんのかえ
2017/05/08(月) 20:09:49.73ID:93uC34hXM
Windows環境で試すならWindows環境で書いてる本買ってきて勉強した方が良いと思うよ
そこで躓くレベルだと手取り足取り教えてもらわんと進まないと思う
2017/05/08(月) 20:23:48.25ID:67J5jWuHa
えぇ・・・
2017/05/08(月) 21:17:26.26ID:DHydgTad0
>>187
159に明示していたのですが
191デフォルトの名無しさん (ワッチョイ 636e-Ogwz)
垢版 |
2017/05/08(月) 23:03:16.81ID:GNYDAKwF0
>>190
$ はコマンド入力を示しているだけなので入れなくていいよ
2017/05/08(月) 23:12:59.99ID:DHydgTad0
>>191
どうも。 やってみましたがダメでした。

C:\xampp\htdocs\_tests>php -S localhost:8080
'php' は、内部コマンドまたは外部コマンド、
操作可能なプログラムまたはバッチ ファイルとして認識されていません。
2017/05/08(月) 23:31:11.67ID:9whwcEDU0
trim関数を文字列に適用する際は、事前に前後のいずれかに空白や改行文字があるかのチェックをした方がいいですか?
とりあえず放り込んどいても問題ないですかね?
2017/05/08(月) 23:55:01.57ID:pOsiqUbS0
>>192
C:\xampp\htdocs\_tests>php -S localhost:8080

この部分は、君が入力していないから、書かなくてよい
C:\xampp\htdocs\_tests>

php -S localhost:8080
環境変数PATHに、php の実行ファイル名を指定していないから、
php と言うコマンドが存在しない

PowerShell を起動して、以下を入力してみ。
$env:Path.split(";")
環境変数PATHは、; で区切り

「環境変数 path 追加」で検索して
195デフォルトの名無しさん (ワッチョイ 636e-Ogwz)
垢版 |
2017/05/08(月) 23:58:02.04ID:GNYDAKwF0
環境変数に C:\xampp\php; を追加だね
とりあえず動かしたいなら ..\..\php\php -S localhost:8080
2017/05/08(月) 23:59:39.10ID:pOsiqUbS0
>>193
ここで聞く前に、やってみれば?

$str = "あいう";
$str = trim ($str);
echo $str;
2017/05/09(火) 00:04:20.24ID:q6L/Mjxw0
>>196
見かけ上問題ないのと本当に問題ないのは違うと思いまして質問させていただいた次第です
198デフォルトの名無しさん (ワッチョイ 76e2-kKGB)
垢版 |
2017/05/09(火) 00:09:30.62ID:DXl/dI3b0
159ですがもう一つ質問があります。

【OS名】Win7-Pro
【PHPのバージョン】5.6.28 (XAMPP v.3.2.2)
【連携ソフトウェア】ブラウザはFirefoxかChrome

【質問内容】
JavaScriptでPHPを起動し、サーバー内の同一ディレクトリ内にある abc.txt (最初はカラ)
に文字列を書き込みたい。

本を見てローカルでは上手くいったので、159のhttp://wpcos.com/?p=13945 のコードの下に
$handle = fopen("abc.txt", "w");
flock($handle, LOCK_EX);
fwrite($handle, "テスト文章です");// abc.txtにデータを書き込む
flock($handle, LOCK_UN);
fclose($handle);

を追加したのですが、abc.txt は何も変化しません。 どうしたら良いでしょうか?


>>194-195
後で試してみます。 PowerShell って初めて聞きましたのでこっちも調べてみます
2017/05/09(火) 00:26:37.79ID:DXl/dI3b0
上記の「本を見てローカルでは上手くいったので」は
書き込みコード($handle〜fclose($handle); )限定の話です
2017/05/09(火) 00:54:54.81ID:aLfyMh4W0
先の質問は解決してんのか?
してないんなら何やったって無駄
201デフォルトの名無しさん (ワッチョイ 636e-Ogwz)
垢版 |
2017/05/09(火) 01:00:42.46ID:bmQioI1H0
>>197
しなくていいと思います
2017/05/09(火) 01:08:19.06ID:DXl/dI3b0
>>200
はい、解決しています>>164。 >>186〜195は>>170-171 で提案して頂いた別案の検証です。
2017/05/09(火) 01:13:51.44ID:aLfyMh4W0
>>202
ならとりあえずエラー(Warning等)出てないかチェック
2017/05/09(火) 01:33:02.97ID:DXl/dI3b0
>>203
どうも。 下記のようにしたところ、 20 kakikomi と表示され、コード自体は実行されたようです。
※20は解消済みの掛け算。 コンソールログには何も表示されません。

try {
$handle = fopen("abc.txt", "w");// abc.txtを書き込みモードで開く
flock($handle, LOCK_EX);// abc.txtをロックする
fwrite($handle, "テスト文章です");// abc.txtにデータを書き込む
flock($handle, LOCK_UN);// abc.txtのロックを解除する
fclose($handle);// abc.txtを閉じる
print " kakikomi";

} catch (Exception $e) {
print " error";
}
2017/05/09(火) 01:37:20.86ID:aLfyMh4W0
コード先頭でerror_reporting(E_ALL);
2017/05/09(火) 17:01:44.91ID:oUHmrZCO0
>>204
その try catch に何を期待していたのか分からないが、
エラー処理は正確にね。
2017/05/09(火) 18:20:53.53ID:D8dw9aKcH
>>204
abc.txtを全ディスクで検索してみたら?
それか、fopen("C:\\abc.txt", "w")として、フルパスで指定するか。
208デフォルトの名無しさん (ブーイモ MM4b-u5gs)
垢版 |
2017/05/09(火) 18:36:53.05ID:me68cFh4M
教えてください。
PDOでSQLからデータ取ってきてそのまま配列に入れたら、
Array (
[0] => Array ( [title1] => hoge [0] => hoge [title2] => fuga [1] => fuga [title3] => piyo [2] => piyo )

てな感じで1つのRowに同じ値が2つな状態になるんですけど、
これ配列入れる前か後に、どっちか1つにできる方法ないですかね。

このあとforreachの処理に投げたんすけど、データがダブっておかしなことになったので…。
よろしくお願いします。
209デフォルトの名無しさん (ワッチョイ df1f-VjVX)
垢版 |
2017/05/09(火) 18:50:53.71ID:1JEWBzos0
>>208
ロードのオプションで、数字かキーか両方(指定なし)がえらべる
2017/05/09(火) 23:18:52.77ID:DXl/dI3b0
皆さん、有難うございます。

>>205
何も表示されませんでした


>>206
すいません気を付けます
print "例外キャッチ:", $e->getMessage(), "\n";
とかで書いておきます。


>>207
Cross origin requests でエラーが出たのでローカルでなくサーバー上でやっています。
2017/05/10(水) 00:26:12.62ID:KrmbBI200
>>210
ini_set('display_errors', 1);
も追加しとけ
2017/05/10(水) 00:37:08.48ID:KrmbBI200
>>210
あと勘違いしているようだから言っておくと, fopenは例外を投げない
というファイル操作関数は例外を投げない
ファイル操作で例外処理をしたければSplFileObjectを使うかset_error_handlerでエラーハンドラを書き換える
2017/05/10(水) 01:14:47.13ID:hTeNJ02Z0
>>211-212
有難うございます
214デフォルトの名無しさん (ブーイモ MM4b-u5gs)
垢版 |
2017/05/10(水) 11:18:19.10ID:fvTwvO+tM
>>209
公式に同じような配列の処理例がありますね…fetch使えばいいのか。
よく調べます、ありがとうございます。
2017/05/10(水) 12:07:27.61ID:kZ1vOxdN0
ImageCreateFromJPEG($imgfile);

$imgfileにjpg画像以外のpng画像やgif画像を入れるとエラーになるのはわかったのだけど
png画像やgif画像をjpg画像に変換する方法がわかりません。
やり方が分かる人がいらっしゃいましたら教えてください。
2017/05/10(水) 12:15:15.94ID:kZ1vOxdN0
すいません。
できました。

imagecreatefromstring(file_get_contents($imgfile));

こうすればpng画像でもできるようです。
ありがとうございました。
2017/05/10(水) 14:02:06.75ID:DOCc0Zf4H
>>210
> ローカルでなくサーバー上でやっています。
なら、そのサーバ上のディレクトリに対して書き込み不可なんじゃないの?

やることその1: fopen()の戻り値$handleを調べて、成功しているかどうか確認する(falseなら失敗)
やることその2: サーバのエラーログを見る
2017/05/10(水) 22:09:56.39ID:auOc2utQM
とにかく不具合あればアクセスログ、エラーログを見ろ
それで8割は原因分かる
2017/05/11(木) 00:26:19.85ID:WqhQ6yh90
>>217-218
有難うございます。 昨日から体調が悪いので検証できません
220デフォルトの名無しさん (ワッチョイ 7fdb-qxJP)
垢版 |
2017/05/11(木) 17:04:44.60ID:jqKKP1Mj0
【OS名】Windows 10 Home
【PHPのバージョン】5.6.30
【連携ソフトウェア】OpenWeatherMap(API)
【質問内容】
http://ryus.co.jp/blog/openweathermap/ を参考にして、ウェブサイトに東京都の天気情報を表示したいです。
ただ、OpenWeatherMapからの天気情報をJSON形式で取得すると方角の値が0〜360で返ってきます。
この値を方角に置き換えて風向きのテーブルに表示したいです。
まだ、PHPを始めたばかりでswitch分しかわからず、それを使用しています。
switch分を変数に代入したり、sprintf関数に組み込んでみたりと色々試しているのですが上手くできないです。
風向きのテーブルに方角を表示するためのアドバイスをください。
よろしくお願いします。

$url='http://api.openweathermap.org/data/2.5/weather?q=tokyo&;units=metric&appid=********';
$json=json_decode(file_get_contents($url),true);

$format='
<tr><td>気温</td><td>%s°C</td></tr>
<tr><td>風向</td><td>【ここに方角を表示したいです】</td></tr>
<tr><td>風速</td><td>%sm/s</td></tr>
<tr><td>湿度</td><td>%s%%</td></tr>
';
echo sprintf($format,$json['main']['temp'],$json['wind']['speed'],$json['main']['humidity']);

$degree=$json['wind']['deg'];
switch($degree){
case $degree > 348.75 && $degree < 11.25:
echo'北';
break;
(同じような感じで方角が16分割されています)
}
221デフォルトの名無しさん (ワッチョイ cf8e-jIBa)
垢版 |
2017/05/11(木) 17:06:00.89ID:qQCmyvYW0
GPLのダウンロード方法教えて下さい。
2017/05/11(木) 17:33:13.49ID:auiRJU69M
>>220
上手くできないって何が上手くできないのか?
エラーログが出てるならエラーログの内容をそのまま書いてほしい
エラーログが出ないなら、エラーログを出すようしにして、エラーログの内容を書いてほしい
そうすれば答えてくれる人がいると思う
2017/05/11(木) 18:28:19.55ID:g90U9udHa
array_reduceは常にインデックス通りの順番で動くことが保証されてますか?
例えば配列の全ての数字を引き算するときに使っても問題ありませんか?
224220 (ワッチョイ 7fdb-qxJP)
垢版 |
2017/05/11(木) 18:35:43.44ID:jqKKP1Mj0
>>222
エラーが出ないというか出せないというかうまく言葉で説明できないです。
申し訳ないです。
もう少し試行錯誤します。
ありがとうございました。
2017/05/11(木) 19:23:37.16ID:SE/IN+7B0
>>220
$degree > 348.75 && $degree < 11.25:

348.75 より大きくて、かつ 11.25 よりも小さい数字ってあるかな?
226デフォルトの名無しさん (ワッチョイ d36e-SU9n)
垢版 |
2017/05/11(木) 19:30:24.73ID:5AwxqDXW0
jsonの中身を貼ればいいんじゃない?
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況