【PHP】くだらねぇ質問はここに書き込みやがれpart4
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
05/03/13 16:08:32ID:???ここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
次スレは>>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/
0213193
2005/03/26(土) 06:12:06ID:???proc_openのマニュアルttp://php.s3.to/man/function.proc-open.html
を読みました。よくは理解できなかったのでサンプルを参考に作ってみました。
やはりシェル上では動きますがweb上では何も表示されませんでした。
<?php
$data = "abcdef\nghijk\nlmnopqr";
$descriptorspec = array(
0 => array("pipe", "r"), // stdin is a pipe that the child will read from
1 => array("pipe", "w"), // stdout is a pipe that the child will write to
2 => array("file", "/tmp/error-output.txt", "a") // stderr is a file to write to
);
$process = proc_open("/usr/bin/grep 'i'", $descriptorspec, $pipes);
if (is_resource($process)) {
fputs($pipes[0], $data);
fclose($pipes[0]);
while(!feof($pipes[1])) {
echo fgets($pipes[1], 1024);
}
fclose($pipes[1]);
proc_close($process);
}
?>
0214nobodyさん
2005/03/27(日) 12:04:17ID:VfQV7VpEphpを使えるように設定しているのですが、どうも期待通りに動いてくれません。
/home/*(username)/public_html/php以下でのみphpを動かしたい
open_basedir = php
user_dir = public_html
とやってみたのですがダメでした。
どの辺の設定をいじればいいのでしょうか?
0216nobodyさん
2005/03/27(日) 17:08:31ID:???それはPHPじゃなくてhttpサーバの仕事だよ
Apacheなら.htaccessで設定できるから該当のスレにどうぞ
0217nobodyさん
2005/03/27(日) 18:30:34ID:o5yBDsfR$a = new TestClass();
$b = &$a;
$aと$bが同じものかどうか(内容が同じというわけではなく、
指し示すメモリの場所が同じ)を検知したいのですが、
なにか良い方法はあるのでしょうか?
どうかご教示下さい。お願いします。
0219nobodyさん
2005/03/27(日) 18:51:03ID:???メモリのマッピングをになっているリファレステーブルで
同じ値が割り当てられていることをもって、指し示す
メモリの場所が同じと見なすしかないと思う。
それとも「同じ値が割り当てられている」ことを調べたいのかな?
0220nobodyさん
2005/03/27(日) 19:16:43ID:o5yBDsfRやはり無理っぽいですね・・
どうもありがとうございます。
0222nobodyさん
2005/03/27(日) 22:49:37ID:???可能だとしたらどうやったらいいのかまったくわかりません。
どなたかご教授よろしくお願いします。
0224nobodyさん
2005/03/28(月) 00:50:15ID:???サーチかなんかのランキング上げたいんジャマイカ?
0226nobodyさん
2005/03/28(月) 07:35:35ID:???そうです。でも田代砲まで強力じゃなくて。
10分間に1アクセスくらいでいいです。
PHPじゃなくてJavaScriptで作れるんですか?
PHPで簡単に作れないでしょうか?
作り方のヒントだけでも教えてください。お願いします。
0227nobodyさん
2005/03/28(月) 12:02:19ID:???1
2
3
4
";
$dat = preg_replace("/1(.*)4/","",$dat);
結果が以下のようになりそうでならないのですがどうしてでしょうか?
1
4
0229nobodyさん
2005/03/28(月) 12:47:19ID:???preg_replace("/1(.*)4/m","",$dat,'m')でもダメでした^^;
洗濯物を干しながら考えてみます
0232227
2005/03/28(月) 13:26:01ID:???$dat = preg_replace("/1(.*)4/m","\\1",$dat);
とすれば結果が23となるので改行が問題なのはわかるのですが/mをつけても
複数行にはマッチしないようです。複数行の解釈を間違えているのでしょうか?。
0233nobodyさん
2005/03/28(月) 13:30:50ID:???.(ドット)を改行にマッチさせるのはsです
$dat = preg_replace("/1(.*)4/s","\n",$dat);
0234232
2005/03/28(月) 13:37:54ID:???$dat = preg_replace("/1(.*)4/s","$1",$dat);
0236nobodyさん
2005/03/28(月) 16:29:39ID:AxvngZW7今まではクラス化されてないPHPコードべた書きのファイルを作り、
グローバル変数として使うというやり方をしていました。
しかしより洗練されたやり方をと思い、設定ファイル自体を
クラス化し、ゲッター(セッターは必要ないですよね)で値を取得
というやり方を考えました。
前者が駄目なやり方とは思いませんが、後者のやり方は一般的な
オブジェクト指向プログラミングにおいて正しいやり方でしょうか?
オブジェクト指向プログラミングにまだ慣れていないので変な質問かも
しれませんが指揮者のご意見をお聞かせいただければと思います。
0237236
2005/03/28(月) 16:35:37ID:???class Config {
var hoge;
var fuga;
// コンストラクタ
// ここで値をセットするのでセッターはいらない?
function Config() {
hoge = "hoge";
fuga = "fuga";
}
// ゲッター
function getHoge() {
return $this->hoge;
}
function getFuga() {
return $this->fuga;
}
}
0238236
2005/03/28(月) 16:45:56ID:???失礼しました。
ちなみに今回お聞きしたいのはどちらかというと小規模な開発
というよりも中規模・大規模開発を視野に入れた保守性重視の
オブジェクト指向ガチガチの開発の場合を想定しています。
0239nobodyさん
2005/03/28(月) 17:24:23ID:???別に決まりは無いので好きなように作ればいいと思いますよ。
自分の場合は値の変わらない設定値は定数にしてます。
0241nobodyさん
2005/03/28(月) 19:44:33ID:???どのようなやり方になるのでしょうか?配列に慣れていないので
よくわからないのです。ご指導宜しくお願いします。
0242nobodyさん
2005/03/28(月) 19:51:02ID:???配列に慣れてないのは構わないんだが、
それ以前に自分の伝えたいことを書き表すのに慣れてないような気が。
そこで指し示す"テーブル"とは具体的に何?
0244nobodyさん
2005/03/28(月) 20:26:42ID:???htmlのテーブルを使って素直に書くと、
<table>
<tr><td><?php echo $array_data[0][0]; ?></td><td><?php echo $array_data[0][1]; ?></td>〜</tr>
<tr> 〜</tr>
〜
</table>
つー風にも書けるけど、それさえも分からんってことじゃないでしょ?
何に困ってるのかよく分わかんないよ。
0245226
2005/03/28(月) 23:06:17ID:???探したけど見つかりませんでした。
0246nobodyさん
2005/03/28(月) 23:11:38ID:VOOnUpPoindexファイルがindex.htmlじゃないとダメで、
テンプレ部分とかいちいち書き直すの面倒なんです
0248nobodyさん
2005/03/29(火) 10:39:10ID:???0251nobodyさん
2005/03/29(火) 13:10:08ID:???>244とヘッダーにおっすおらエクセルよろしくな!って書けば終わりじゃね?
それ以外だとエクセル調べるしかないのでスレ違いだと思われ
0253nobodyさん
2005/03/29(火) 14:02:19ID:fSc5qMirすべて取り除きたいのですが、下のようにしても取れてないようです。
どこが間違えてるんでしょうか?
$hoo=$_POST['hoge'];
$hoo=str_replace(" ","",$hoo);
0254nobodyさん
2005/03/29(火) 14:56:39ID:???0255nobodyさん
2005/03/29(火) 17:06:13ID:???当方、PHP 4.3.9 を先日インストールしました。
<?php
$name = $_SERVER["PHP_SELF"];
echo $name;
?>
と書いても何も表示されません。
スーパーグローバル変数がPHP 4.1.0 から使用できることは知っているのですが、
それ以外にphp.iniの設定などがあるのでしょうか?
0256nobodyさん
2005/03/29(火) 17:22:55ID:???<?php
phpinfo();
?>
0258nobodyさん
2005/03/29(火) 18:42:20ID:3cB8cobm"a" => "10",
"b" => "20",
"c" => "30"
);
$pop = array(
"20",
"30"
);
という二つの配列があって、$arrayから、$popの値が同じデータを削除したいのですが
なんか上手い方法ないですか?
0259258
2005/03/29(火) 19:01:41ID:???foreach($array as $key => $val){
$flag = 0;
foreach($pop as $del){
if($val == $del){
$flag = 1;
}
}
if($flag != 1){
$newArray[$key] = $val;
}
}
です。
0260nobodyさん
2005/03/29(火) 19:10:51ID:???じゃだめ?
0261nobodyさん
2005/03/29(火) 19:23:44ID:???print array_search($value,$array);
}
てのもありかと。
0262261
2005/03/29(火) 19:25:18ID:???0264nobodyさん
2005/03/30(水) 02:30:53ID:???0265nobodyさん
2005/03/30(水) 02:48:37ID:???0267nobodyさん
2005/03/30(水) 03:58:20ID:VK+XSbsaやる必要あるの?
0268nobodyさん
2005/03/30(水) 04:16:45ID:???qmailの設定変更ができない状況であれば、代替手段を考えればよい。
制約条件が多くなるほど使える手段が減り、最終的に実現不可能ということになる。
0270nobodyさん
2005/03/30(水) 08:03:08ID:???qmailである必要はないが、携帯で画像アップする方法に、
メールを使う以外、なにかあるなら言ってみろ。
ワカランチンが余計なことほざくな。タコ。
0272nobodyさん
2005/03/30(水) 09:30:31ID:PFZcR5nDPHPに用意されてる?あったら教えて欲しい。
0273nobodyさん
2005/03/30(水) 09:41:09ID:P9xGS9Mverror_log()で日本語のログを書き出してるんだけど、ある時期から
日本語が文字化けするようになりました
前:[error] エラー
今;[error] \xa5\xa8\xa5\xe9\xa1\xbc
何がきっかけでこのようになり始めたのかは正直わからないんですが
対処する方法はありませんか?
PHPソースはEUCで、error_log()に渡す際にエンコードはしてません
0274nobodyさん
2005/03/30(水) 12:14:27ID:???qmailからのパイプにて、phpスクリプトで添付データを処理
(PHPである必然性は何処にも無いが…)
って、>>267の質問からは大きく逸脱するが(w
0275nobodyさん
2005/03/30(水) 14:22:47ID:LVdKz7n5includeとrequireの違いがわかりません。
お忙しいとは思いますが、なにとぞ、よろしくお願いします。
0277nobodyさん
2005/03/30(水) 15:06:42ID:zj/psBx6上手いやり方が分からないので
$rs=mysql_query("select * from hoge");
$cnt=0;
while($row=mysql_fetch_assoc($rs)){
$cnt++;
}
などとやってるのですが、もっと効率のいい方法は無いのでしょうか。
count($rs)とかcount($row)とかやってみたんですが
正しく帰ってきてないみたいです。
php4とMySQL4.0を使ってます。よろしくお願いします。
0281nobodyさん
2005/03/30(水) 15:55:53ID:???$_SERVERはwebサーバ依存だから表示されないんなら使えないんだろうよ
設定でどうのこうのは無かったと思う
0282nobodyさん
2005/03/30(水) 16:12:38ID:LjnlbFKQsendmailを使ってクライアントへ日本語テキスト+csv形式の添付ファイルをつけたものを送信したいのですが、
クライアントの環境がwindowsXP、IE、そしてメールソフトがノーツなのです。
ノーツ以外のメールソフトで受信すると正常なのですが、ノーツでは文字化けするといわれました。添付ファイルは普通に読めているようです。
本文のヘッダの関係なのかな、と思ったのですが、charsetはISO-2022-JPです。
途方に暮れてるんですが、どうしたらいいでしょうか。
板違いだったらごめんなさい&誘導してくださると助かります。
0283nobodyさん
2005/03/30(水) 16:31:04ID:LjnlbFKQごめんなさい自己解決。
本文のcharsetをUTF-8にしたら普通に見れたみたいです。
お騒がせしました。
0284nobodyさん
2005/03/30(水) 16:49:27ID:zj/psBx6なんか配列みたいのが帰ってきてるのかと勘違いしてました。
下のようにしたらできました。というかmysql_num_rowsを知らなかった・・・。
$rs=mysql_query("select * from hoge");
$cnt=mysql_num_rows($rs);
>>279
mysql_query(select count(*) from hoge)として
レコード数を直に受け取る方法はあるのでしょうか?
0286nobodyさん
2005/03/30(水) 17:15:38ID:???文字列を先頭から何バイト目まで表示、以降は任意の文字列に置き換えっていう関数があったと思うんですが、何でしたっけ?
どうもみつけられず。
0287nobodyさん
2005/03/30(水) 17:20:25ID:???でいいんじゃないの
0288nobodyさん
2005/03/30(水) 17:20:30ID:???0289286
2005/03/30(水) 17:31:10ID:???先頭からn文字まで表示して、任意の文字列を足す、と考えればいいんですよね、ありがとうございました!
0291nobodyさん
2005/03/30(水) 19:24:05ID:???特定のディレクトリから下層のディレクトリまで全部の可視ファイルを検索、そのファイルの作成日時か更新日時を取得して、現在の日時に近い順にソートしてhtmlにリンクで出力させるって可能ですか?
素直にsqlの方がいいのでしょうか?
うちのいつもタコ管理者(鯖ダウンさせる天才)に言ったらsqlで自分でやってと言われますた。
っつか、sql使った事ないので分かりません。phpのみでって出来ます?
0294nobodyさん
2005/03/30(水) 20:03:52ID:???今時のケータイのみ対応したい場合はそれでもいいね。
それ以前の携帯もターゲットに含む時はメール「しか」手段が無い。
>>291
そこに書いてある通りの事を管理者に言って、「SQLですれ」って返されたのなら、
「えええええええ(AA略)」って顔で反応すべきだったな。
PHPのマニュアルの「ディレクトリ関数」「ファイルシステム関数」の関数を幾つかと
再帰処理を使えば、PHPだけでも可能。
0296nobodyさん
2005/03/30(水) 20:10:31ID:???そっか...可能なのか...ちょっとマニュアル見て頑張りまつ。(´・ω・`)
...っつか簡単な掲示板しか作ったこと無い漏れにできるだろうか。
やはりうちの鯖管はダメポなんだな...大丈夫かうちの会社...
0297nobodyさん
2005/03/30(水) 20:38:24ID:???0298nobodyさん
2005/03/30(水) 20:41:18ID:???まぁ、望む事はPHPのみで実現可能だが、
巨大なサイト(対象ファイルが多数)の場合なら、
深夜帯などに定期的にDB化しておいて、表示の際にはSQL使ったほうが、
鯖負荷は低くて済むかも。あくまでもケースバイケース。
0299nobodyさん
2005/03/30(水) 21:28:38ID:???どうやってDBに入れるんだろ?
0300nobodyさん
2005/03/30(水) 21:29:51ID:4FafkLm/PHP拡張子ファイル、を閲覧するようにできるでしょうか?
0302nobodyさん
2005/03/30(水) 22:48:14ID:???ファイルパスと、filemtimeでも放り込んでおけば、
後は如何様にも・・・
ってDBとの接続の仕方とかから説明が必要?
0303nobodyさん
2005/03/31(木) 01:19:34ID:???あるいはXMLでなくても任意のテキストファイルを送信することはできますか。
通常、フォームを使うとデータは param1=value1¶m2=value2&.... という形で送信されます。
しかしこの形式だと、入れ子になったデータを表現するのが難しいです。
そこで、もしフォームデータをXML形式でサーバに送信できたら、入れ子になったデータが簡単に扱えるようになるんじゃないかと思ってます。
HTTPは任意のデータを送信できるので不可能ではないと思うのですが、HTMLとブラウザを使っているかぎりはどうしたらよいのかわかりません。
0306286
2005/03/31(木) 01:56:00ID:???$str = mb_strcut( $str, 0, 100 )."...";
こうしたんですが、テキストに日本語が混ざっている場合、考慮されずに2バイト中の1バイトの部分でぶった切られたりしますか??
日本語英数混在しているんですが、どうもそれが原因で後のhtmlに影響が出ているっぽいんです。
こういった場合、どうしたらいいものでしょうか??
0307nobodyさん
2005/03/31(木) 01:59:27ID:???textareaにガリガリとXMLを書けw
0309286
2005/03/31(木) 02:04:37ID:???htmlソースを見ると、文字じゃない文字になってます。
ブラウザ上では表示されません。
ココにコピペしようかと思いましたが出来ませんでした。
環境:
MacOSX safari 文字コードはUTF-8です。
0310nobodyさん
2005/03/31(木) 02:06:08ID:???FROM要素のenctype属性で指定できる仕様になってる。
実装は知らん。
PHPの話じゃないので続きはほかでやってくれ。
0311286
2005/03/31(木) 02:26:17ID:???そのあたりちゃんとやってまだダメだったらまたお願いします。
0312nobodyさん
2005/03/31(木) 04:05:22ID:Bkn1FNJUインデックスをちゃんとゼロから順に直すにはどうしたらいいでしょうか。
重複を削除してくれるのは便利なんですが、
インデックスが飛び飛びになるので具合が悪いです。
■ このスレッドは過去ログ倉庫に格納されています