【PHP】質問スレッドpart24【php】
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
04/11/01 04:09:15ID:???・新規質問の方は上げてください。age進行でお願いします。
・質問する際には環境も明記。
・正しい日本語で分かりやすく。
・レスがつかないからって逆切れする厨お断り。
・解決しなくてもこたえてもらったら礼を。
■本家
http://www.php.net/
■日本 PHP ユーザ会
http://www.php.gr.jp/
■PHP マニュアル
http://www.php.net/manual/ja/
■PEAR マニュアル
http://pear.php.net/manual/ja/
過去スレ, 関連スレ等>>2-4
0450nobodyさん
04/11/10 03:50:52ID:???0451429
04/11/10 04:45:07ID:???律儀やね
>>436
srand()の意味が分かってないのでマニュアルを読んだ方が良い。
あと、今回のようなケースではshuffle()使った方が楽。
ランダムで吐き出す数が決まってるなら、array_rand()でも良い。
>>439
urlencode()
>>440
暗号化には2種類あって、複合化できるものとそうでないものがある。
md5()は後者。
そもそも、複合化できるなら暗号化する意味がない。
0452429
04/11/10 04:46:27ID:???最新レス取得せずに書き込みしてしまいたくさんカブってしまった。
0453nobodyさん
04/11/10 05:17:03ID:???○復号
0454nobodyさん
04/11/10 07:42:04ID:???0455416
04/11/10 08:36:32ID:???PHP のソースに含まれている GD を組み込んでいない場合は GD のヘッダは
要求されないので pear install pdflib で成功する。
または、
http://www.boutell.com/gd/
の GD をインストールしている場合はそちらの方のヘッダを使用できるよう
なので、pear コマンドでも成功すると思う。
0456軟式PHP
04/11/10 09:02:14ID:???頭悪そう・・・・
0459444
04/11/10 09:54:01ID:???なるほど。JpGraphもよく利用するので gd は迷わず有効にしてました。
l今回は勉強になりました。どうもありがとうございました。
ちなみに pdf_fit_textline 関数はlite版では動かなかった・・・・
ライセンス買えってかorz
0461nobodyさん
04/11/10 10:48:26ID:???0462nobodyさん
04/11/10 14:02:56ID:???0463nobodyさん
04/11/10 14:10:05ID:???0464nobodyさん
04/11/10 16:43:27ID:???HTML>
body>
ココからヤフー
<?
readfile("ttp://www.yahoo.co.jp");
?>
/BODY>
/HTML>
上のように自分ページに他のアドレスのページをくっつけたいのですが
readfile関数を使うと相対URLで書かれていたリンクや画像が自分のURLになってしまうので
404エラーや画像が正しく出ません
絶対URLに直す方法を教えて下さい
あとreadfileで指定したURLがCGIなどで自動的にジャンプするときにはそのジャンプ先のアドレスを読み込み表示するようですが
ジャンプ先のURLの取得方法を教えて下さい
優しいかたおしえてください
0465nobodyさん
04/11/10 16:55:17ID:???0466nobodyさん
04/11/10 16:57:15ID:???> 絶対URLに直す方法を教えて下さい
正規表現で書き換え。この時点でreadfileで済ますのは難しくなるな。
> ジャンプ先のURLの取得方法を教えて下さい
HTTPヘッダのLocation: URL や HTMLヘッダのmeta refresh を使う場合がほとんどだから、
両方を自分で処理すればよい。
難易度がかなりアップしてるなぁ。人のページを取り込むなんてセコいことせずに
リンクだけ貼っておけばええやん<a href="〜">だけで済むぞ。良かったな!
0469nobodyさん
04/11/10 17:33:44ID:???0470nobodyさん
04/11/10 17:51:49ID:???0472464
04/11/10 18:31:53ID:???やさしい人おしえてください
0475nobodyさん
04/11/10 19:35:49ID:???php://input などで読み取ることはできないでしょうか?
0477nobodyさん
04/11/10 21:05:28ID:???ジャンプ先ってリダイレクト先のこと?
ヘッダにリダイレクトがあればそこに飛ばす。
それ系の説明したページは腐るほどあるからググれ。
時々リダイレクト先を相対パスで指す場合があるので、その辺注意。
0478272
04/11/10 21:23:43ID:???出力する方法ならよく記事になってるんですが・・
ちなみにテキストだけでいいんです。
0480nobodyさん
04/11/10 23:38:53ID:???$file = "ccc.cgi";
$aaa = stripslashes($_GET['aaa']);
$bbb = htmlspecialchars(urldecode($_GET['bbb']));
$ok="http://";
if($aaa = $ok):
$fp = fopen($file, "w");
fwrite($fp, "<a href=\"$aaa\" title=\"$bbb\">$bbb</a>");
fclose($fp);
endif
このようにしてみたのですが、上手く出来ません。
どこが間違っているのでしょうか?お願いします。
0481nobodyさん
04/11/10 23:55:25ID:MdRF7bmL再インストールしてみても復活できませんでした。
実際の操作としては php-4.3.9/ で make install を行いました。
どのようにすれば復旧できるでしょうか。
0483nobodyさん
04/11/11 02:12:24ID:???$aaa = $ok の時点で必ず $aaa は "http://" になり if 文は必ず true になり意味が無い
$aaa == $ok だとしても "http://" と比較するだけであり、リンクとなるのが <a href="http://" title="....."> しか有り得ない
なにがやりたいのかよくわからないが とりあえず上記の間違いは直しとけ……
0484481
04/11/11 02:17:33ID:???/usr/local/lib/phpディレクトリを削除して再インストールしたら復活しました。
0485nobodyさん
04/11/11 03:32:26ID:KRI/ACvqとやってもうんともすんとも言ってくれません。
system("dir");
とかは普通に動くのですが。
なにかオマジナイがいるのでしょうか?
0486nobodyさん
04/11/11 03:43:35ID:???なんでエラー処理をしないんですか?
なんで絶対パス・相対パスを考慮しないんですか?
0488nobodyさん
04/11/11 05:59:46ID:5oF+gWxQNULLで固定ですか?
わざわざNULLで初期値設定をしているプログラムをあまり見ないのですが…
0489nobodyさん
04/11/11 07:51:51ID:SAqbK5N3ごめんちん。
いけました。
0490nobodyさん
04/11/11 11:37:55ID:ilzje3xZとかやったあとに、そのURLから帰ってくる、html文を読むには普通のFgetSでいいんでしょうか?
0491nobodyさん
04/11/11 12:00:43ID:???0492nobodyさん
04/11/11 12:09:41ID:???>FgetS
キモイヨ
0493nobodyさん
04/11/11 12:15:19ID:???0494nobodyさん
04/11/11 12:16:22ID:???>FgetS
これって何言語の流儀?
0495nobodyさん
04/11/11 13:17:25ID:nmdKIJIz0496nobodyさん
04/11/11 14:22:58ID:???べつにいいけどさ、fgets()使うならポインタのオープンはfsockopen()でやった方が
タイムアウト処理とか楽だ。
0497490
04/11/11 15:28:36ID:ilzje3xZしました。
FgetSで取ってきたら、ぬるぽでした
>494
オレオレ流
0498nobodyさん
04/11/11 15:37:32ID:???0499nobodyさん
04/11/11 15:42:36ID:ilzje3xZかき方悪くてすまんですね
echo FgetS($fp,512);
しても表示されませんでした。
PHPだとなんていうんだい?
何もとって来れ無かったっていったほうがいいのかね?
厳密な定義のな言葉がわからないんで、気に触ったらすいませんね
0500nobodyさん
04/11/11 15:45:04ID:???Null Pointer Extensionって何?
0501nobodyさん
04/11/11 15:50:03ID:???他の部分でもエラーハンドリングを確実にしているのにも関わらず
fgetsの返り値がfalseでなくて空文字だったのだったら、
何も取れなかったということですね。
0502496
04/11/11 15:50:05ID:???PHPなら流れはこんな感じになるだろう。
$fp = @fsockopen();
socket_set_timeout($fp, 適当に);
fputs($fp, "GETなりPOSTなりお好きなように");
whileループとfgets($fp)組みあわせる等して色々;
fclose($fp);
ソケット使ってHTMLソース取得なんて他の言語も併せれば
資料いくらでもある。ググれ。
0503nobodyさん
04/11/11 15:57:23ID:ilzje3xZ色々ありが�d
ググって来ます
0504nobodyさん
04/11/11 16:03:15ID:???普通に$fp=@fopen($url,"r");
と書いてたけど、fsockopen()がいいんだ。。。
次からそうします。
ところで、3行目のfputsはどこへ書きだしてるの?
0506nobodyさん
04/11/11 16:44:22ID:???fopenとfsockopenはまったく違うものだよ。
fopenではURLを開くけどfsockopenはIPアドレス(又はドメイン)を指定して開く。
fputsは開いたポートからサーバーへデータを送っているって感じ。
前にここでサンプル晒したんだけどなぁ、前スレで、、
どうしても見つからないようであればどうぞ。
あまりいいサンプルではないけど。
ttp://f9.aaa.livedoor.jp/~fcafe/fbox/lib/sock.phps
0509nobodyさん
04/11/11 18:00:40ID:???$contents = file( "http://なんたら" );
if ( $contents===false) {
// タイムアウトかURL not found
}
きちんとやろうとすると508のスクリプトになるのかぁ。ちょと大変。
0510503
04/11/11 18:35:31ID:ilzje3xZありがとう
0511軟式PHP
04/11/11 18:48:54ID:???0512nobodyさん
04/11/11 20:22:03ID:???0513nobodyさん
04/11/11 20:52:52ID:QmAFV0EC0514nobodyさん
04/11/11 21:27:25ID:???0515nobodyさん
04/11/11 21:29:11ID:???メッソド の検索結果 約 592 件
0516nobodyさん
04/11/11 21:31:27ID:???0518nobodyさん
04/11/12 01:47:24ID:3oKIst3jpublicだと開けっぴろげすぎるので
とりあえずprotectedにする
そんなこと考えてるのは俺だけですか?
0519nobodyさん
04/11/12 01:51:32ID:???0520nobodyさん
04/11/12 01:56:43ID:3oKIst3j・将来継承するかも分からない
ゆえにprotected
なんですが…
0521nobodyさん
04/11/12 02:11:52ID:???OOな考え前提じゃなくてコーディングレベルだけで考えるとこうなる
PHPは特にそうだろうが、誰しもが分析・設計からコードに落とすわけじゃないと思われ
0522nobodyさん
04/11/12 02:35:07ID:???カプセル化で破綻しがちだーね。アクセス制限どうするかっていう部分から
考えはじめるのはオブジェクト指向とは相容れない
しかし現実的な問題もあるよ
IDE任せというわけにもいかないのがPHPだし
0523nobodyさん
04/11/12 02:55:22ID:???分析クラスさえ固まってないのにもうコーディングしなきゃいけない、
でもオブジェクトの性格がはっきりしない、ええい面倒だ全部public!
IDEがあてにならないならリファクタリングなんかしなきゃいいんだ!
という選択肢を選ぶのが真の男。
つかこの手のネタはくだスレの方でやったほうがいいんじゃなかろうか。
0524nobodyさん
04/11/12 03:09:50ID:???0525nobodyさん
04/11/12 03:20:31ID:+Yt5Ck4w基本的にdeleteしてinsertするってのが一般的なのでしょうか?
0526nobodyさん
04/11/12 03:27:58ID:???updateすればいいんでね?
0527nobodyさん
04/11/12 03:28:44ID:???. ィ
.._ .......、._ _ /:/l! またまたご冗談を
:~""''.>゙' "~ ,、、''‐'、| _
゙、'、::::::ノ:::::::_,.-=. _〜:、 /_.}'':, いくらなんでもMySQLをバカにしすぎ。
``、/:::::::::__....,._ `゙'Y' _.ェ-、....._ /_゙''i゙ノ、ノ
,.--l‐''"~..-_'.x-='"゙ー 、`'-、 ,:' ノ゙ノブ
" .!-'",/ `'-‐'') /\ `/ でノ-〈
.-''~ >'゙:: ‐'"゙./ ヽ.,' ~ /
//::::: ', / ,:'゙
0528nobodyさん
04/11/12 04:11:57ID:???f`::'ー 、,-、-、_ _,....-- 、_ _,....-=―ヽ―-、-、_ 、ミ川川川彡
,.r'‐'゙´ヽ,r' ヽ \ー、_:::::::::/,´:::::::::::,:::::::,::::::::ヽ::\`ー、 ミ 彡
,〃ィ ,rヽ'-ヽ i 、 、 ヾ,、 `'y',ィ´/::::::::/|::::::ハ_::::::::ト、::::\ \ 三 ギ そ 三
r'/〃// | i! |, \、_`ー!rf.,イ-,ィ/u ノ::::/ |::::`::::|iヽ::::::ヽ ヽ. 三 ャ れ 三
iヾ!l i /,.=ヽ i,ケ ハ,i', Y't=ラ゙,〉'|::::r'|! 彡´ ,!--、 |i!|::|::i::::::', ', 三 グ は 三
{ヾllッ-, 〃ノ'-'、||ii i|i| |-/! /^ヽ ´ ヾ|从ノ::i::::| ||三 で 三
>|゙! 0ヽ ノ' ´ 0 レノWノi |,.、!/ 0 0 ',' レ|,イ::::i,,_ | !三 言 ひ 三
',i ヽ- , _, " |i| | | ´ '´ハ',Y .!三 っ ょ 三
/l ` !| | i `´ r 'ー‐' u (-, ' | !三 て っ 三
/久 U |! i|'´'、u z_,ノ/ .i |三 る と 三
/イ |ヽ '==..‐_、 |!,'|Y´,ヽ ___ ハ_ ,/i | |三 の し 三
|ト|、',::::\ _,.-‐イ//-'´::::!\'ー‐--ニュ / ト_、 _| _!,=,|三 か て 三
〉:ヾ_'、::::`ー‐r< //イ|::::::_、:::`7i\ __,..-‐'´ .| |`゙"::"::|-"三 !? 三
'ー‐'´¨`'ー、/,rケ /,'1ノ人'-‐'`y'/::::, i| ,!, |`iiイ:::::::::| 彡 三
,〃7,‐/ { ´_,-'´ ,,‐!、=,/.〃::::i i|kハ / ,ヾ、::::::|.|! 彡川川川ミ
,ッ'、_〃'f /゙-<´ r〃 〃 /イ::::,!ッ'/ ', / / |ト、:|:リ
rir' 〃,y'、久_,.rヽ/〃 川/iケir'〃/ ,-'水´ / 〃 \
f::}'ー'〃_i| /::::f|::::', .〃 r/if |||ir' f| レ' r'o | .〃-、 〃 "i
,);'ーッ゙-. レ:::::/_|::::::',_,〃=_、!!|| !i/ ||:,ri !o ∨/_)_〃 |
0529nobodyさん
04/11/12 04:29:04ID:???0530nobodyさん
04/11/12 04:32:05ID:???マルチポストしてきてやったぞ。
http://pc5.2ch.net/test/read.cgi/db/1096838301/268
0531nobodyさん
04/11/12 05:48:47ID:j3YLIEmEob_start();とか使えばどこでもセットできるようですが
送信が溜まってると思うと苦いです。
if(phpversion()>="4.1.0"){
extract($_GET);
extract($_POST);
extract($_COOKIE);
extract($_SERVER);
}
の直後が一番良いのでしょうか?
0532nobodyさん
04/11/12 05:49:21ID:???0533nobodyさん
04/11/12 05:51:51ID:???テレビには、終始無抵抗で殴り続けられる平八が映し出されています。
妹と目が合いました。まずパンツを穿いてください。見つかりませんか。
脚に引っ掛けたままなのを忘れるほど動揺しているんですね。
床に投げ出されたコントローラーが、なおも続く振動でヴヴと鳴き蠢いています。
笑ってごまかしたって駄目です。しかし鉄拳3を選んだセンスは評価したい。
いま平八がKOされました。妹の醜態に兄も一発KOです。
0534nobodyさん
04/11/12 05:56:14ID:???0535nobodyさん
04/11/12 05:57:05ID:???妹がデュアルショックを股間にのガイドライン
http://that3.2ch.net/test/read.cgi/gline/1079969619/
0536nobodyさん
04/11/12 08:53:02ID:FC5lH0u1self::method()と
$this->method()
は内部的に全く同じですか?
0537nobodyさん
04/11/12 09:05:02ID:DqN1EkY0一般的な言語では\r\nはそれぞれ0x0D 0x0Aだと思うのですが、PHPではどうなっているのでしょうか?
さまざまなサイトや関数リファレンス書籍等を見たところすべて\r=0x0A \n=0x0Dと記述されておりました。
しかしecho等で出力させたところ\r=0x0D \n=0x0Aとなりました。
実際にはどちらが正しいのでしょうか?
0538nobodyさん
04/11/12 10:03:50ID:???>さまざまなサイトや関数リファレンス書籍等を見たところすべて\r=0x0A \n=0x0Dと記述されておりました。
>すべて\r=0x0A \n=0x0Dと記述されておりました。
そんなはずはありません。
0539nobodyさん
04/11/12 10:13:39ID:2WcufnQuhttp://jp2.php.net/manual/ja/function.trim.php
0540nobodyさん
04/11/12 10:18:59ID:2WcufnQuhttp://jp2.php.net/manual/ja/tokens.php
では合ってる
0541nobodyさん
04/11/12 10:36:31ID:2WcufnQu間違ってるのは日本語だけかな
0542nobodyさん
04/11/12 11:11:39ID:???------------------------------------------------------------------------
class X{
var $n;
function X($n){
$this->n = $n;
}
}
class Y{
var $x;
// 指定されたX型のメンバ変数を持つYオブジェクトを作成する
function Y($x){
$this->x = $x;
}
}
var $x = new X(10);
var $a = new Y($x);
var $b = new Y($x);
$a->x->n = 20;
------------------------------------------------------------------------
これを実行すると、$b->x->n は10のままですよね。それを、
$a->x->n を変更したときに、$b->x->n の中身も
変更されるようにしたいのですが、何かうまい方法はないでしょうか?
0543nobodyさん
04/11/12 11:14:49ID:8aG2jjUM"#"(シャープ)の入ったURLを読み取るにはどうすればよいのでしょうか・・
$_SERVER['QUERY_STRING']や$_SERVER['REQUEST_URI']では
読み取れないんですが・・
よろしくおながいします。
0544nobodyさん
04/11/12 11:19:53ID:???class X {
var $n;
function X($n){
$this->n = $n;
}
}
class Y {
var $x;
// 指定されたX型のメンバ変数を持つYオブジェクトを作成する
function Y($x){
$this->x = & $x;
}
}
$x = new X(10);
$a = new Y(& $x);
$b = new Y(& $x);
$a->x->n = 20;
?>
$x->n も変わるけど。
0546nobodyさん
04/11/12 11:25:07ID:8aG2jjUM回答ありがとう。
かなり衝撃的
0547542
04/11/12 11:30:33ID:???なるほど。
コンストラクタ呼び出しの引数と、コンストラクタ内のメンバ変数の代入式の
両方を参照にするというのは思いつきませんでした。
ありがとうございました。
0548nobodyさん
04/11/12 11:42:49ID:???■ このスレッドは過去ログ倉庫に格納されています