【PHP】くだらねぇ質問はここに書き込みやがれpart5
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2005/04/30(土) 00:12:53ID:OJfc9xBuここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>970あたりが建てて下さい
・過去スレ
【PHP】くだらねぇ質問はここに書き込みやがれ
http://pc5.2ch.net/test/read.cgi/php/1099322141/
【PHP】くだらねぇ質問はここに書き込みやがれpart2
http://pc5.2ch.net/test/read.cgi/php/1105218084/
【PHP】くだらねぇ質問はここに書き込みやがれpart3
http://pc5.2ch.net/test/read.cgi/php/1107780435/
【PHP】くだらねぇ質問はここに書き込みやがれpart4
http://pc8.2ch.net/test/read.cgi/php/1110697712/
0449nobodyさん
2005/05/17(火) 00:27:04ID:???を取得するhtmlの文字エンコードに合わせたら表示できました。
ありがとうございます!
$encoding = mb_internal_encoding(shift_jis);
$file = "http://www.f7.dion.ne.jp/~moorend/news/2005040201.html";
$fp = @fopen($file,"r");
fpassthru($fp);
としたらいい感じにはなったんですが
何故か
Notice: Use of undefined constant shift_jis - assumed 'shift_jis' in /home/ryota/httpd/php_work/first.php on line 6
と怒られます。
なにかセットで定義する必要があるのでしょうか。
0450nobodyさん
2005/05/17(火) 00:38:40ID:???注意: 未定義の定数 shift_jis が使われています。'shift_jis' だと想定します。
mb_internal_encodingの引数は、文字列 あるいは 定義済みの定数。
0451nobodyさん
2005/05/17(火) 00:45:53ID:???0452nobodyさん
2005/05/17(火) 00:59:34ID:???ありがとうございます
なぜか
$encoding = mb_internal_encoding(shift_jis);
でも怒られながらも表示されていたのが不可解でした。
shift_jisを消すと文字エンコードがおかしくてまともに表示出来なかったです。
また
("shift_jis")
( "SJIS" )
どちらでもエラーを吐かずに表示できました。
0453nobodyさん
2005/05/17(火) 01:13:02ID:???マニュアルの定数の部分にも書いてありますが、
> 未定義の定数を使用した場合、ちょうどstringとしてコールしたかのように(CONSTANT vs "CONSTANT")、
> PHPはその定数自体の名前を使用したと仮定します。 この際、E_NOTICE が発生します。
今回の場合は、定数shift_jisが存在しなかったので文字列(string)'shift_jis'を指定したと仮定されます。
notice:の出力部分は、上記の事を英語で簡単に書いてあります。
ほんとうにそうなのかを確認するには、$encoding = mb_internal〜 の前後で
print mb_internal_encoding(); を実行してみれば分かるかと。
0454nobodyさん
2005/05/17(火) 01:35:52ID:???未定義のものを使ったので、文字列を勝手に入れてくれたのかな・・
まだ私には難しい表現なのでゆっくり噛み砕いてみます。
指定した語句を含む行を抜き出す関数というものはあるでしょうか?
出来ればそのHTMLから該当する語句を含む行を全て抜き出したいのです。
またはある語句からある語句の範囲を削除するというのでも解決出来そうです。
とにかく無駄な部分のほうが多いので・・
0455nobodyさん
2005/05/17(火) 02:42:54ID:???色々とありがとうございました
<(_ _)>
0456nobodyさん
2005/05/17(火) 07:36:39ID:???そこでPHPは、おばかなプログラマが文字列に引用符をつけ忘れたんだなと判断して文字列として扱ってくれる
0457nobodyさん
2005/05/17(火) 07:42:05ID:Ph4M31UZ0460軟式PHP
2005/05/17(火) 10:07:12ID:???リファレンス本て勿体ない。PHPマニュアルで十分やろ。
かなり分かりやすいと思うよ>PHPのマニュアル
本を買うならもっと別の本にしたほうがいいと思われ。
0461nobodyさん
2005/05/17(火) 11:33:51ID:wrsgSSonfor($ii=0;$ii<5;$ii++){
}
}
PHPに限ったことではないのですが、ループが2重になる時、
内側のインクリメント変数はなんて名前にするのがいいですか?
0462軟式PHP
2005/05/17(火) 11:42:59ID:???0463nobodyさん
2005/05/17(火) 11:48:34ID:???最近、老眼で $i $j $l の区別がつきにくい…
マジな話をすると、それぞれのループには意味があるだろうから
外側のループも $i にこだわらず、意味のある名前にしたら?
0464461
2005/05/17(火) 11:51:38ID:???ありがとうございました。
0465nobodyさん
2005/05/17(火) 12:04:08ID:???I, J, K, L, M, N で始まる変数 -> 整数型
A〜H, O〜Z で始まる変数 -> 実数型
になるってやつだね。
ttp://www.hatena.ne.jp/1086523013 あたりに似たような話題が出ていたので参考にどうぞ。
0466nobodyさん
2005/05/17(火) 12:23:25ID:???でも3重のループ構造なんて作ったこと無いからnまでだな。
0468nobodyさん
2005/05/17(火) 13:00:55ID:???for i = 0 to 9 : for j = 1 to 100
みたいな感じだったから今でもループカウンタは i j だ
0469nobodyさん
2005/05/17(火) 13:34:27ID:Apwp1iicpreg_replaceでマッチした結果を、連想配列の添え字に使用できないかな?
----------------------------------------------------
<?php
$hash = array(
"100" => "100_text",
"101" => "101_text",
);
$str = "string101";
echo preg_replace("/.+?([0-9]+)/", $hash['$1'], $str);
exit;
?>
----------------------------------------------------
101_textを期待してるんだけどまったく駄目です。
/eを使うのかと思うんだけどいまいち理解できません。
よろしくお願いします。
0471470
2005/05/17(火) 14:20:01ID:???か
preg_replace_callback + function
0472nobodyさん
2005/05/17(火) 14:48:23ID:???どのメソッドを使えばよいでしょうか?
開くターゲットはhtmlファイルなのですが、
クッキーなどのいくつかのヘッダも出力してやりたいので、
fopenではない専用のAPIがあれば助かります。
よろしくお願いします。
0473nobodyさん
2005/05/17(火) 14:54:33ID:???> /e修飾子は、 preg_replace()が replacementパラメータを
> 適当な置換を行った後、PHP コードとして処理するようにします。
echo preg_replace("/.+?([0-9]+)/e", '$hash["$1"]', $str);
0476nobodyさん
2005/05/17(火) 15:12:01ID:???タグの部分は置き換えで出来るのですが、予期しない文章部分等への対応をどうしたら良いのか困っています。
0478nobodyさん
2005/05/17(火) 16:02:43ID:???$this->hogehoge()使うのと
CLASS::hogehoge()使うのと
どっちが正しいとか早いとかってある?
0479nobodyさん
2005/05/17(火) 16:04:59ID:???だってクラス名変わったらアウトじゃん。
0480nobodyさん
2005/05/17(火) 16:06:23ID:???0481nobodyさん
2005/05/17(火) 16:12:50ID:???再帰ループとかに使うんで自分のクラスです。
親メソッドだったらparent::hogehoge()で呼ぶのが正解だと思っとりますが。
0482nobodyさん
2005/05/17(火) 16:15:28ID:???クラスの作成意図による。
class test {
function hoge(){ echo 'hoge'; }
function hoge1(){ $this->hoge(); }
function hoge2(){ test::hoge(); }
}
test::hoge1(); // fatal errorになる。インスタンスが無いのでhoge1での$this自体が無い。
test::hoge2(); // hogeを出力
0483nobodyさん
2005/05/17(火) 16:30:25ID:???なるほど・・・
インスタンスを必要としないように組んでれば$thisじゃなくても良いわけですな。
とりあえず、>479の言うとおりクラス名変わったら面倒になりそうなので
$thisを使う事にします。
さんくす。
0484nobodyさん
2005/05/17(火) 16:32:22ID:???function hoge(){ echo 'hoge2';}
}
ってしたくなると困るね。
Javaとかでは、なんかセオリーみたいなのあるの?
0485nobodyさん
2005/05/17(火) 16:33:33ID:???class test {
function hoge(){ echo 'hoge'; }
function hoge2(){ test::hoge(); }
function hoge3(){ self::hoge(); }
}
test::hoge2(); // hogeを出力
test::hoge3(); // hogeを出力
っちゅう手もある
0486nobodyさん
2005/05/17(火) 16:38:56ID:???明示的にはなっているのですが、それをどう抜き出したら良いのか分かりませぬ・・
抜き出したい行には固有の文字列がありますから、テキストから取り出す方法が分かれば可能だと思いますが、その方法自体が分かってないのです・・。
http://itbtech.itboost.co.jp/man/php_man/manual.html
とかのどこ見ろや!でいいのでおながいします
0488nobodyさん
2005/05/17(火) 18:44:35ID:ceDjCL+B出品途中ではなく終わった出品物の場合、URLデータを引っこ抜く時に
ログインしろ!ときます。
ログインをPHPのスクリプトで行い、ページデータを引っこ抜く手段はあるでしょうか?
お願いします。
0489488
2005/05/17(火) 19:15:06ID:ceDjCL+BURLデータ>ページデータです。
0490nobodyさん
2005/05/17(火) 19:18:06ID:???T_STRINGとか…
0491nobodyさん
2005/05/17(火) 19:30:55ID:???シェルスクリプトでw3mのマクロを書いたほうが簡単なような気が。
0492nobodyさん
2005/05/17(火) 19:46:12ID:???0493nobodyさん
2005/05/17(火) 19:54:12ID:???実際にソースをHPにあげてみたら上手く動かなかった、、
おそらく$_SERVERのところの記述ミスなのですが、検索して調べてみたのですがわからずここで聞くことにしました。
ご教授おねがいします。
ソースファイル↓
http://www.uploda.org/file/uporg101239.zip.html
0494nobodyさん
2005/05/17(火) 20:02:21ID:???0496nobodyさん
2005/05/17(火) 21:34:02ID:???直接 fuga.php にアクセスされたときに
「ぬるぽ」
と表示したいのですが、どの変数があるなしで判断したらいいでしょうか?
GETさせたく無い方法を教えてください。
0497nobodyさん
2005/05/17(火) 21:43:11ID:???0498nobodyさん
2005/05/17(火) 21:43:25ID:???postデータがない場合、引数がない場合、getデータがある場合はぬるぽ。
0499nobodyさん
2005/05/17(火) 21:58:03ID:???if (isset($_SERVER['HTTP_REFERER'])
&& strpos($_SERVER['HTTP_REFERER'], 'hoge.html') !== FALSE) {
//何か処理
} else {
echo 'ぬるぽ';
}
0500nobodyさん
2005/05/17(火) 22:01:32ID:???ユーザー名が入るテキストフィールド(name = username)があるとして、
<?
if (!$_POST["username"]){
print ぬるぽ
}
?>
これだと、ユーザー名を未入力でボタンを押しても「ぬるぽ」と表示されてしまいます。
アクセスされた人が「ぬるぽって何?」って思われたり、または脊髄反射的に「ガッ」っと言う人が言うかもしれません。
$_POST は 連想配列である、とマニュアルに書いていますが、
そもそも $_POST という配列が無いという分岐はできるのでしょうか?
0503nobodyさん
2005/05/17(火) 22:19:42ID:???0504nobodyさん
2005/05/17(火) 22:24:33ID:???0505nobodyさん
2005/05/17(火) 22:31:21ID:???その際、普通は
<img src = "graph.php?param1=<?php echo $param1; ?>">
などのようにimgタグの中からgraph.phpを呼んでついでに引数を渡すのですが、
グラフのデータそのもの(大きい配列)を引数として渡したいので、この方法だとうまくいきません
どうしたら大きい配列を渡すことができるでしょうか?
0506nobodyさん
2005/05/17(火) 22:32:43ID:???0508nobodyさん
2005/05/17(火) 23:15:01ID:???0509505
2005/05/18(水) 00:20:12ID:???うまくいかないというか、サイズが不確定な配列をうまく渡す方法がわからないんです
>>508
serialize()を使う場合、どう記述すればいいでしょうか?
0510nobodyさん
2005/05/18(水) 00:24:58ID:???エラーが出るのですが、いい方法ないですか?
0511nobodyさん
2005/05/18(水) 01:12:05ID:???ほしい機能としては、
1.各携帯から見ることができる
2.RSSを出力できる
こういうものはありますかね?
もし知ってる方いらっしゃいましたらよろしくお願いします。
0512nobodyさん
2005/05/18(水) 01:24:46ID:???graph.php?data=<?php echo serialize($array_data); ?>
--
$array_data = unserialize($_GET['data']);
>>510
Shift_JISだと気をつけないといけない事が多々あるのでEUCで書いてあるのでしょう。
Shift_JISで動くように気をつけて書き直すしかありません。
0514nobodyさん
2005/05/18(水) 01:24:57ID:???0515nobodyさん
2005/05/18(水) 01:27:50ID:???0516nobodyさん
2005/05/18(水) 01:33:05ID:???CGIではみつかったんですが、
PHPではみつからないんですよね・・・
もしよかったら教えていただけませんか?
検索ワードでも構わないのでよろしくお願いします
0518nobodyさん
2005/05/18(水) 09:05:12ID:???>PHPではみつからないんですよね・・・
難解な文章だな
0519nobodyさん
2005/05/18(水) 09:39:55ID:???日本ではみつかったが、
独島ではみつからない。
0520nobodyさん
2005/05/18(水) 10:19:18ID:???日本にあって大阪にないものなーんだ? 答え:安全
みたいなもんか
0521nobodyさん
2005/05/18(水) 10:26:36ID:???みたいなもんか
0522nobodyさん
2005/05/18(水) 12:20:29ID:???0523nobodyさん
2005/05/18(水) 12:37:42ID:6htWVmYWブラウザの戻るをクリックするとフォームの内容が消えてしまうのですが、
これが消えないようにHTML内で小細工できますでしょうか?
0524nobodyさん
2005/05/18(水) 12:38:31ID:kL0uKaiJ0525nobodyさん
2005/05/18(水) 12:39:48ID:???0526nobodyさん
2005/05/18(水) 13:28:24ID:???フォーム画面のhttpリスポンスヘッダのキャッシュ関係を適切に設定する。
ってHTMLかぁ。<meta>である程度は制御できるんじゃないかな。
つーか消える(=鯖へ再リクエスト)ってのは、既になにかキャッシュ関係を操作しちゃってる気がするんだが。。
HTMLの話が続くようならweb制作板へ。
>>524
エラーの出力レベルをE_NOTICEを含むようにした時の挙動がそれに近いかな。
0527nobodyさん
2005/05/18(水) 16:00:42ID:???をttp://php.s3.to/chat/ch.php(ソース ttp://php.s3.to/chat/ch.php.txt)
の名前の所に組みこむ方法を教えてください≦(._.)≧
0528nobodyさん
2005/05/18(水) 16:34:10ID:???チャット側の方に認証の仕組みを組み込む事になるから、結構めんどくさいと思われ。
自分でスクリプトを書けない人なら丸投げスレで頼めばやってくれる人がいるかも知れず
0530nobodyさん
2005/05/18(水) 17:49:23ID:???0531nobodyさん
2005/05/18(水) 19:11:23ID:???$str = '%db{name}';
$ret = preg_replace("/%db{(.*?)}/", $info[$1], $str);
printf("%s", $ret);
このような感じで「taro」と表示するのを期待しているのですがエラーが出てしまいます。
シングル、ダブルクォーテーションで囲っても期待通りの動作はしませんでした。
どのような方法を使えば「taro」と表示出来ますでしょうか。
それから
foreach (range(1,5) as $key) {
なんとか $i;
print ++$i;
}
print $i;
この結果が「11111」になるよう$iを局所変数にするような関数ってありますか?
0533nobodyさん
2005/05/18(水) 23:41:05ID:???でログが現在MAX返信数で設定出来ますが、例えば1000などに設定した場合ログの容量が増えるたレスカウント、参照数をそのまま残して古いレスから消えるようにしたいでのです。
例)MAXログ保存数が例えば500に設定出来ましたら(例:レス300参照数1000などが複数あった場合レスカウントと参照数はそのまま生かして)ログ500未満の古いレスから消えていくという感じです。
ちなみにMySQLは使えないサーバーです。
お願いします<_o_>
0534nobodyさん
2005/05/18(水) 23:47:51ID:???頭小せえな
参照数やレスカウントをどうやって取得してるのかが問題だ。
別ファイルで保存してんなら、古いデータが消えても
値をクリアししなけりゃいいんじゃないの?
0535nobodyさん
2005/05/19(木) 00:18:12ID:???頭小さいです<_o_>
別ファイルで保存してます。
//ログの最大保存数
maxlog = 500
みたいに設定出来ればいいのですが。
やり方教えてください<(_ _)>
0536nobodyさん
2005/05/19(木) 03:05:10ID:HiH0MLZ70537nobodyさん
2005/05/19(木) 03:10:27ID:???ってPHSと携帯のやつ昔あったよな
0539nobodyさん
2005/05/19(木) 12:22:48ID:???頭の大きさが戻った。
いやいやそーでなくて。
設定したって、反映する動作組まなきゃ意味ないだろ。
でもソースがわからなけりゃ、どこをどう改造するか特定できねえよ。
0541nobodyさん
2005/05/19(木) 15:13:14ID:JciC6cGiPostgreSQL7.4.7を連携を取るため、
phpizeoを実行しましたが、
acloacl: not found
と出てきます。
aclocalってなんですか?
また、インストールしなければならない場合の方法を教えてください。
0542nobodyさん
2005/05/19(木) 15:20:23ID:???isset($abc) || $abc = 1234;
ではなく
isset($abc) || = 1234;
という形にして欲しいのは-;
0543nobodyさん
2005/05/19(木) 15:22:39ID:???ありがとうございます。・゚・(ノ∀`)・゚・。
ttp://php365.com/download.php?id=4の中のforum..phpです
お願いします<_o_>
0544nobodyさん
2005/05/19(木) 15:37:32ID:???$abcがセットされていたら1234を代入する、ってことだよね。
オイラは || を論理演算以外に使う事自体が気持ち悪い。。
0545nobodyさん
2005/05/19(木) 16:00:38ID:???0547nobodyさん
2005/05/19(木) 16:11:16ID:???0548nobodyさん
2005/05/19(木) 16:12:51ID:???そうそう。それにPHP5だと以下の書き方は少し予想外の動作をするからなぁ。
isset($abc) || $abc = 1234;
if (!isset($abc)) $abc = 1234;でも良いけどわざわざ!を使うのも好きになれない-;。
どうせ型無し(厳密にはあるけど)言語なんだから初期化なんて気にしなくても良いんだろうけどね。
0549軟式PHP
2005/05/19(木) 16:52:59ID:???■ このスレッドは過去ログ倉庫に格納されています