トップページ⇒php
1001コメント285KB

【PHP】下らねぇ質問はID出して書き込みやがれ 133

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2014/04/19(土) 08:04:54.26ID:???
質問者はまず>>1を良く読むこと(必須!)
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 132
http://nozomi.2ch.net/test/read.cgi/php/1390166591/

◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.5
【連携ソフトウェア】MySQL ImageMagick
【質問内容】

◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)

◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)

◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。

【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0697nobodyさん2014/06/06(金) 18:14:49.22ID:???
次のように、
フォームの空欄に任意の文字を入れて送信すると、テンプレートを介してHTMLが作成されるようなプログラムを作成したいと思いますが、
サンプルとかフリーで配ってるオススメのコードはありますか?

---------------------------------------------
フォーム
------------------------------
タイトル[      ]
ニックネーム[        ]
記事[                     ]

[送信]


---------------------------------------------
テンプレート
------------------------------
<HTML>
<HEAD>
<TITLE>{{title}}</TITLE>
</HEAD>
<BODY>
<H1>{{title}}</H1>
<B>{{nickname}}</B>
<HR>
{{article}}
</BODY>
</HTML>
---------------------------------------------
0698nobodyさん2014/06/06(金) 19:09:22.77ID:???
$html=file_get_contents('page.tpl');
$keys=['title','nickname','article'];
foreach($keys as $key){
$value= isset($_POST[$key])?$_POST[$key]:"";
$html = str_replace('{{'.$key.'}}',htmlspecialchars($value,ENT_QUOTES,'UTF-8'),$html);
}
echo $html;
0699nobodyさん2014/06/06(金) 20:52:43.20ID:WQWxIvlk
どうやってID出すの?
教えてケロ
0700nobodyさん2014/06/06(金) 20:54:22.94ID:a1F+aLu8
出てるじゃん
0701nobodyさん2014/06/06(金) 21:36:48.25ID:???
書いた瞬間に解決か
0702nobodyさん2014/06/07(土) 09:21:36.47ID:???
                       コングラッチュレーション
             ,―==7     Congratulation!   コングラッチュレーション
             |く ___ _>                    Congratulation!
             fll`ーU+'
0703nobodyさん2014/06/09(月) 14:15:25.05ID:jvKQR3gI
正規表現を、ほぼ一発でサクっと書ける人になりたいです。
どうすればいいですか?
0704nobodyさん2014/06/09(月) 14:18:19.56ID:???
数こなすしか、、、
でもしばらく触ってないとすぐ忘れるw
0705nobodyさん2014/06/09(月) 15:46:56.19ID:???
そんなに覚えることないよね正規表現
^$+.*?[]{}()の意味覚えればだいたい対応出来るでしょ
0706nobodyさん2014/06/09(月) 15:52:01.60ID:???
複雑度によってはどうしたって一発サクッとは無理でしょ
0707nobodyさん2014/06/09(月) 17:20:00.56ID:???
Perlのキモい機能まで覚えようとすると無理ゲーになってくる。
0708nobodyさん2014/06/09(月) 22:10:54.83ID:OEDMPWiv
phpでデーモン作りたいのですが
起動の時はphp daemon.phpで
終了時はpskillするのではなく
apacheみたいに
daemon.php start
みたいにしたら起動
daemon,php stop
みたいにしたら停止(終了)にしたいのですが
どうやったら出来ますか?
0709nobodyさん2014/06/09(月) 22:13:27.66ID:???
php ダエモン.php start
なら出来ると思うが
直でピュアエイチピュアを実行するのはムリポな気がするですます
0710nobodyさん2014/06/09(月) 22:16:16.46ID:???
>>708
pearのSystem_Daemon
0711nobodyさん2014/06/09(月) 22:18:37.39ID:???
>>709
shやperlとかと同じように、一行目にphpのパスを書いて実行権限与えれば動くよ。
07127082014/06/09(月) 22:30:55.66ID:OEDMPWiv
>>709-711
ありがとうございます
早速調べて試行錯誤してみます
0713nobodyさん2014/06/10(火) 01:20:37.47ID:qon4WkJp
{"query":{"url":"example.com"},"type":"B",
"syutoken":{
"saitama":{"capital":"さいたま市","city":"熊谷、所沢","tourist":"秩父、長瀞、川越"}
"chiba":{"capital":"千葉市","city":"船橋、柏","tourist":"房総、TDR、成田"}
"tokyo":{"capital":"東京都","city":"立川、八王子","tourist":"浅草、奥多摩、高尾山"}
"kanagawa":{"capital":"横浜市","city":"川崎、相模原","tourist":"鎌倉、箱根、小田原"}
}}
※見やすくする為に、改行してありますが、実際には改行はありません。

上記のようなファイル(hoge.txt) があります。
これをPHPで読み込んで、syutokenの中身を配列にし、最終的に次のような結果が出るようにしたいのですが、
具体的にどのようなコードにしたらよいでしょうか?

echo $list[saitama][tourist];
echo $list[kanagawa][capital];
-----------------------------
秩父、長瀞、川越
横浜市


特に分からないのは、入れ子になっている{}からどのようにsyutokenの中を配列化するかです。
0714nobodyさん2014/06/10(火) 02:21:13.75ID:???
>>713
json_decode
0715nobodyさん2014/06/10(火) 10:40:59.78ID:???
,が一部ないのは何とかしてね
0716nobodyさん2014/06/10(火) 12:44:01.09ID:???
>>708
stopで何かしらの終了処理をさせたいという意味なら、
daemon.phpをシェルスクリプト(など)で包んで、daemon.phpはシグナルを処理するようにする。

daemonctl.sh stop
 ↓ pkill -15 daemon.php
daemon.php
 pcntl_signal(15, $callback)

な感じがよろしいのでは?
0717nobodyさん2014/06/11(水) 22:40:17.67ID:???
データベースからphpに値を呼び出すのってどうやるの?
0718nobodyさん2014/06/11(水) 22:46:10.33ID:???
おーいって呼ぶ
0719nobodyさん2014/06/12(木) 00:00:04.37ID:???
やりたいように処理を書く。
あとマルチおつ。
0720nobodyさん2014/06/12(木) 03:40:23.89ID:???
>>718
来ないんだけど
0721nobodyさん2014/06/12(木) 03:52:03.90ID:???
>>720
ちゃんと名前呼んだか?
0722nobodyさん2014/06/12(木) 10:06:47.50ID:???
尊称付けて謙譲語でお願いしないと答えてくれないよ。
0723nobodyさん2014/06/12(木) 10:24:31.82ID:???
なんか行くとこ行くとこに同じ質問があって邪魔くさいな
0724nobodyさん2014/06/12(木) 14:09:06.60ID:???
>>717

マジレスすると>>1を読んで、そこに書いてあることを実行しろ。
0725nobodyさん2014/06/18(水) 23:20:32.68ID:???
【OS名】CentOS
【PHPのバージョン】5.3.3
【質問内容】さっきインストールしたばっかの超初心者です
test.php
---
<? phpinfo(); ?>

は動きますが、

test.html
---
<html>
<body>
<?php phpinfo() ?>
</body>
</html>

は動きません。何が原因でしょうか?
0726nobodyさん2014/06/18(水) 23:28:00.96ID:???
(;_;)
0727nobodyさん2014/06/18(水) 23:29:01.06ID:???
test.html -> test.php
0728nobodyさん2014/06/18(水) 23:42:12.60ID:???
(;;)
0729nobodyさん2014/06/18(水) 23:54:47.17ID:ekb+OAaC
httpdかなんかのログ見ろ
0730nobodyさん2014/06/19(木) 00:16:51.88ID:spODJt+u
for (;;)

>>729
普通に200返して終わりだろ。見なくてもわかる。
0731nobodyさん2014/06/19(木) 00:30:17.01ID:???
まほうのじゅもんう゛ぁrづmp
0732nobodyさん2014/06/19(木) 08:33:32.10ID:???
スレタイ(質問はID出して書き込みやがれ)
0733nobodyさん2014/06/19(木) 08:35:15.35ID:???
たぶんhttpdのconfのAddHandlerにhtmlを追加だな。
0734nobodyさん2014/06/19(木) 09:41:08.91ID:???
>>3
0735nobodyさん2014/06/19(木) 13:21:13.22ID:2VhA+HW6
スーパーグローバル変数を作成する方法を教えて。
0736nobodyさん2014/06/19(木) 13:39:07.96ID:???
ぐぐってわかることを聞かないで
0737nobodyさん2014/06/19(木) 14:46:40.63ID:???
>>736
難しいですけど、あなたにはわかるのですか?
0738nobodyさん2014/06/19(木) 15:10:44.42ID:???
$SUPER_GLOBALS['xxx'] = だろ
0739nobodyさん2014/06/19(木) 15:31:08.46ID:???
http://php.net/manual/ja/runkit.configuration.php
0740nobodyさん2014/06/19(木) 16:09:20.15ID:???
>>739
ありがとうございました
助かりました
0741nobodyさん2014/06/19(木) 16:14:32.69ID:KXRJbj9g
なんでfopenとかってファイルが無い場合警告が出るんですか?
戻り値で判別できるのに警告を出す歴史的な理由が知りたいです
0742nobodyさん2014/06/19(木) 16:35:26.84ID:???
assertと同じようにデバッグ用じゃないかな
0743nobodyさん2014/06/19(木) 22:22:39.62ID:???
>>741
歴史的な理由とか知ってる奴がこんなところにいるとは思わんが。
警告が必要ないなら抑制すればいいじゃん。
0744nobodyさん2014/06/19(木) 22:36:28.28ID:???
スーパーウルトラハイパーメガギガテラスペシャルファンタスティックナイスグレートワールドグローバル変数を作成する方法を教えて。
0745nobodyさん2014/06/19(木) 22:41:39.10ID:???
ページングに関しての質問です。

今は以下の方法を使っているのですが、

「PHPでPEARを使わないPager(ページャー)その2」
http://blog.quall.net/program/302/

simplepagenation.jsを使うと簡単に設置出来てbootstrapにも対応しているという事を知りました。

https://codeiq.jp/magazine/2014/02/6155/

ここで疑問がわきました。
1ページに表示したい画像と文章が10セットあったとして、
それが300ページになるような場合、
表示速度はどうなるのでしょうか?

このjsは全ての項目を1ページに表示するように作成して指定箇所以外を隠す事でページングを実現する仕様のようなので、実際は全てを表示するだけの負荷がかかって表示速度が遅くなるのではないかと考えました。

この考えで間違いないでしょうか?

だとしたら使えないなぁと…。
0746nobodyさん2014/06/19(木) 22:56:37.53ID:???
>>745
スレタイ
0747nobodyさん2014/06/19(木) 23:12:24.40ID:???
>>746
失礼しました。
IDの出し方がわからないのですが、
どうすれば出ますか?
0748nobodyさん2014/06/19(木) 23:22:59.68ID:???
>>747
名前欄にfusianasan(フュージャネイザン)って入れて書き込めばおk
0749nobodyさん2014/06/19(木) 23:25:39.72ID:???
>>747
PHP板ですよ?
0750nobodyさん2014/06/19(木) 23:30:21.26ID:???
>>747
>>1すら読んでないのか
帰れ
0751nobodyさん2014/06/20(金) 08:51:29.11ID:???
ページネーションの件は自己解決出来ました。

ページングにbootstrapを対応させたくてググってもsimplepagenation.jsしか見つけられなかったので前述のような質問をしたのですが、
pear pager を修正したらbootstrapに対応させる事が出来ました。

ご迷惑をおかけしました。
0752質問者己2014/06/20(金) 11:00:03.81ID:nxvJXQ2c
サーバー側のPHPで、setcookieって?
返したページに、
<meta http-equiv="Set-Cookie" content="〜">
やJSでのdocument.cookie = "〜"; 
と書かれてあるのかと思ったがHTMLソースになかった。

このsetcookieはどういう仕組みですか?
0753nobodyさん2014/06/20(金) 11:06:39.71ID:???
ヘッダにあるんだろ
ヘッダも表示できる環境でやってみ
0754nobodyさん2014/06/20(金) 11:55:25.19ID:???
ブラウザであるサイトを見るとheaderとbodyという大まかに分けて2つの情報が送られてくる
headerはサーバの設定によるものがいくつか送られてくる(例えばServer:Apacheとか)
bodyってのはようはhtmlの部分のこと
そんでブラウザは送られてきたheaderを解釈したあとに
body(html)内のheader情報(head要素の中身)を解釈して表示するって流れ
重複していた場合の優先順位は
サーバの設定によるheader情報>html内のheadに書かれてるheader情報

phpのsetcookie関数やheader関数は
このサーバの設定によって送られてくるheader情報のとこに割り込む形になる

ようは別にhtmlにheader情報を書く必要はないってことだ
>>753の指摘通りソースの表示で見えるものではない
今はわからなくてもそのうち分かるよ


同じContent-Typeヘッダを送信した場合の例
Shift_JISが優先されるのでUTF-8では文字化けするはず

<?php
header('Content-Type:text/html;charset=Shift_JIS');
?>
<html><head><meta http-equiv="Content-Type" content="text/html;charset=UTF-8"></head>
<body><pre>あいうえおかきくけこ</pre></body></html>
0755nobodyさん2014/06/20(金) 13:24:15.98ID:???
Content-Type: text/html

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">

だとUTF-8を補う感じな
0756nobodyさん2014/06/20(金) 13:33:34.72ID:eYt1ClmL
良レスキター。 >>754 乙

横から補足すると、今はブラウザに開発者ツールが付属してるので、
それを使えばHTTPヘッダを容易に見られるようになったね。

パケットキャプチャを起動する機会がずいぶん減ってしまった。
0757nobodyさん2014/06/21(土) 21:41:02.99ID:???
教えてください。

$tweet = 'ホゲホゲ';

これを100回繰り返して配列に入れて1個持ってきたいんですがどうしたらいいんでしょうか。
$tweet
$tweet.'あああああ';
$tweet.'ああああ';
$tweet.'あああ';
$tweet.'ああ';
$tweet.'あ';
0758nobodyさん2014/06/21(土) 22:23:41.90ID:???
>>757
> これを100回繰り返して配列に入れて1個持ってきたいんですがどうしたらいいんでしょうか。
・「これを100回繰り返して」の「これ」って何を指してるの?
・「繰り返して配列」の「配列」って新規で作成するってこと?
・「1個持ってきたいんですが」の「1個」っていうのは何を指してるの?

$tweet = 'ホゲホゲ';
$tweet_ary = [$tweet];
$tweet_ary = array($tweet);
for($i=1; $i<=100; $i++){
$tweet_ary[] = $tweet.str_repeat('あ', $i);
}

こういうことやりたいの?
0759nobodyさん2014/06/21(土) 22:42:26.24ID:???
>>758
失礼いたしました。

「これ」というのは
$tweet に「あ」を5個加算して
一個ずつ消したものを指します。
そして、これを100個配列に入れたいのです。

配列は新規です。失礼しました。
1個持ってきたいというのは、配列の中から1個ランダムで持ってきたいということです。
0760nobodyさん2014/06/21(土) 22:44:32.37ID:???
こういう顧客いるけどこれで伝わらないと「は?おまえ頭大丈夫?」みたいな顔される
ぶん殴りたくなる
0761nobodyさん2014/06/21(土) 23:18:06.49ID:???
あかん、全然意味がわかんないわ
0762nobodyさん2014/06/21(土) 23:23:13.69ID:PhGC0drH
日本語でおk
0763nobodyさん2014/06/21(土) 23:36:25.49ID:???
どういう結果を期待しているのかがさっぱりわからない。

[0] => ホゲホゲ
[1] => ホゲホゲあ

みたいな感じで、欲しい結果を書いてみて。
0764nobodyさん2014/06/22(日) 02:45:48.55ID:???
>>759
とりあえず、ID出そう
0765nobodyさん2014/06/22(日) 08:23:53.33ID:???
"ホゲホゲ". str_repeat('あ', rand(1, 100));

つまりこうじゃね?
0766nobodyさん2014/06/22(日) 12:21:12.93ID:???
欲しいデータってこんな感じ?
$tweet = array('ほげほげあああああ', 'ほげほげああああ', 'ほげほげあああ', 'ほげほげああ', 'ほげほげあ');
$new_array[0] = $tweet;
$new_array[1] = $tweet;
:
$new_array[98] = $tweet;
$new_array[99] = $tweet;

クエスチョンマーク浮かべてる可愛い猫のAAもってくんぞ!
0767nobodyさん2014/06/22(日) 12:23:37.75ID:???
わかんねえ、ますますわかんねえ
弄れば弄るほどバグが沸いてくるみてえでわくわくするぜ
0768nobodyさん2014/06/22(日) 12:55:13.91ID:???
よくわからないけど配列に入れる必要性は無いと思う
0769nobodyさん2014/06/22(日) 17:01:38.42ID:???
おれもギブアップ(笑)
0770nobodyさん2014/06/22(日) 17:06:00.68ID:7kgulmpi
https://www.youtube.com/watch?v=BKorP55Aqvg
これと同じ気分になる
0771nobodyさん2014/06/22(日) 18:41:33.76ID:xExtlOnF
php5.2系の日本語マニュアル(http://www.php.net/manual/ja/)が
見たいんですけど
どこかにありますか?
0772nobodyさん2014/06/22(日) 18:45:02.17ID:3tHGIVi0
最新版でもいいだろ。基本拡張してるだけ。
ダメだったらネットでググって対応。
0773nobodyさん2014/06/22(日) 18:55:05.45ID:xExtlOnF
下の関数をphp5.2のeuc環境、sjis環境で
$str=htmlspecialchars($str);
このように使っている関数と置き換えて
ちゃんとデグレードせず動くのか調べたいんで
php5.2系のドキュメントが見れたらうれしいんですけどね

function euc_htmlspecialchars($string, $flags=NULL)
{
if($flags===NULL) {
$flags = (ENT_COMPAT|ENT_HTML401);
}
return htmlspecialchars ($string , $flags, $encoding = "eucJP-win" );
}
function sjis_htmlspecialchars($string, $flags=NULL)
{
if($flags===NULL) {
$flags = (ENT_COMPAT|ENT_HTML401);
}
return htmlspecialchars ($string , $flags, $encoding = "SJIS-win" );
}
0774nobodyさん2014/06/22(日) 18:57:20.05ID:uqj6Sjog
最新版でもいいだろ。基本拡張してるだけ。
ダメだったらネットでググって対応。
0775nobodyさん2014/06/22(日) 19:22:07.32ID:???
引数とかフラグはphp5.3から追加とか使用可能なバージョンは書いてるだろ
0776nobodyさん2014/06/22(日) 19:33:11.04ID:???
>>764
これで出来てますかね・・・。

やりたいことは、Twitterにツイートしたいのですが
同じ文章を連続で投稿することが出来ないんです。
それを回避するために指定された文章の末尾にああああああをつけて回避しようと思ったんです。

ツイートA
ツイートAあああああ
ツイートA
というのは出来なくて5回異なる文章をツイートすることで
もう一回ツイートAが出来るんです。

なので
ツイートA
ツイートAあああああ
ツイートAああああ
ツイートAあああ
ツイートAああ
ツイートAあ
ツイートA
となります。

ユーザーが入力した回数分、上記を繰り返して一個順番ずつ持って行きたいんです。
(さっきはランダムと言いましたが間違いました。すいません)
0777nobodyさん2014/06/22(日) 19:36:53.78ID:???
スパムBOT作成につきあえと
0778nobodyさん2014/06/22(日) 19:56:47.31ID:???
なんだキチガイか
0779nobodyさん2014/06/22(日) 20:56:10.30ID:???
スパムBOTとかじゃなくて、PHPの勉強をやってて・・・
0780nobodyさん2014/06/22(日) 20:58:12.21ID:???
>>776
とりあえず、ID出せよ
0781nobodyさん2014/06/22(日) 21:20:25.45ID:???
ツイッタに自動連続投稿がスパムBOTじゃなかったら、何なのよ
0782nobodyさん2014/06/22(日) 21:38:35.29ID:???
IDどうやって出すんですかこれ・・・

勉強のためにしかやってないですよ....
0783nobodyさん2014/06/22(日) 21:58:53.52ID:???
>>773
php5.2系のドキュメント というものは存在しない。

該当環境で、テストすべき。
0784nobodyさん2014/06/22(日) 22:14:43.69ID:???
>>773
その関数さ、フラグとか変数使わないほうが使いやすいと思う。
例えば
f($flags===NULL)
のところを、
f(mb_detect_encoding("eucJP-win"))
に変更するとか。
各文字コードに対応させたい場合でも簡単にできるし。

>>782
投稿の処理が出来ているのであれば、あとは>>758.の処理をちょっと変更するだけでいい。
IDの出し方は分かるまで>>1を繰り返し音読しろ。
0785nobodyさん2014/06/22(日) 22:18:44.38ID:Eyyl2/9O
>>784
音読しました。

投稿の処理は出来ているので>>758さんの処理を弄ってみたいと思います。
ありがとうございます。
0786nobodyさん2014/06/22(日) 22:38:55.73ID:???
犯罪助長すんなよ
0787nobodyさん2014/06/22(日) 22:44:47.42ID:???
>>773
変更履歴で確認しなさい
http://www.php.net//manual/ja/function.htmlspecialchars.php#refsect1-function.htmlspecialchars-changelog
0788nobodyさん2014/06/23(月) 02:52:08.06ID:161+35T7
5.2とか主流4系時代の人柱だろ
0789nobodyさん2014/06/23(月) 10:11:58.21ID:???
>>788
サポート終了しても4が主流だと思ってた人ですか
0790nobodyさん2014/06/23(月) 12:45:08.77ID:???
>>789
ごめんなさい。サポート終了してもRHEL頼みで5.3が主流だと思っています。
RHEL7きたら、ようやく5.4かと思っています。
0791nobodyさん2014/06/23(月) 13:34:09.26ID:161+35T7
4系最終の11か月後に5.3出てるじゃん
この状況で5.2なんか使うような奴なかなかおらんよ
Version 4.4.4
17 Aug 2006
          Version 5.2.0
          02 Nov 2006
          Version 5.2.6
          01 May 2008
Version 4.4.9
07 Aug 2008
          Version 5.2.7
          04 Dec 2008
          Version 5.3.0
          30 Jun 2009
          Version 5.4.0
          01 Mar 2012
0792nobodyさん2014/06/23(月) 14:44:22.01ID:???
>>790 >>791
継続案件ならいいんじゃないか
新規はどうするんだい?

それに5.3.0が出てすぐ使うとか人柱もいいとこだな
07937902014/06/23(月) 15:43:50.70ID:???
んなもん、要求仕様と運用体制次第だべ。
5,6年でリニューアルないし終わるシステムなら、大概はRHEL6でいいだろうし。
がっちり面倒見れる奴がずっと運用サポートし続けるなら、別にこのあたり縛られず
適当なものを選択すればいいだろうしで。
0794nobodyさん2014/06/23(月) 16:11:14.26ID:???
>>793
各々の事情次第だから否定はせんよ
0795nobodyさん2014/06/23(月) 16:59:55.59ID:161+35T7
まあ俺はぺちぱーじゃねえからどれも使ってないがな
0796nobodyさん2014/06/23(月) 18:14:19.50ID:???
ぺちぱーでググってみた。
なんでこのスレにw
まー俺もほとんど使ってはいないが
■ このスレッドは過去ログ倉庫に格納されています