【PHP】下らねぇ質問はここに書き込みやがれpart18
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2006/03/15(水) 19:18:21ID:yiOrS10Nここなら本スレで回答のないお前の下らない質問に回答があるかも知れません。
まず読め【PHP マニュアル】
http://www.php.net/manual/ja/
本スレ【PHP】質問スレッドpart33【php】
http://pc8.2ch.net/test/read.cgi/php/1140027592/
前スレ【PHP】下らねぇ質問はここに書き込みやがれpart17
http://pc8.2ch.net/test/read.cgi/php/1140786348/
過去スレは>>2-3あたり
0507nobodyさん
2006/03/26(日) 23:17:44ID:???それは一応見たけど自分の思うところとしては見つける事ができなかった、
と要約してあると思うな。
いわゆる自分はただの質問厨とは違いますよって事。
0508nobodyさん
2006/03/26(日) 23:21:24ID:???506じゃないが。
その書き方は逆にただの質問厨に見えると思うってことだと思うぞ・・・。
きちんとするんであれば、
「iniの各設定されている値が“2M”のものを探しましたが見つかりませんでした」
とか、具体的にどういう風に探したのかを併記すべきだろ。
曖昧な表現で逃げてるだけ。
0509nobodyさん
2006/03/26(日) 23:35:00ID:???なるほど、確かにそのとおりだな。
自分でどういうの探したかっての言った方がいいよな。
ってか言わないと探した振りな奴が蔓延しそうだし。
0510nobodyさん
2006/03/27(月) 00:00:19ID:w5DDkcYH1つのDBにテーブルを50個作るなら
50個のDBを作って、1個のテーブルにした方が良いんですか?
何となくSQLiteの仕組み見ると、そう感じるんですが・・・
巨大なファイルを読み込む事になるわけですし・・・。
0511nobodyさん
2006/03/27(月) 00:02:27ID:???0512nobodyさん
2006/03/27(月) 00:08:26ID:???接続もわけワカメになりそうな悪寒。
つか50ものテーブル扱うならサーバ型のDB使った方が良いんじゃないかな。
0513nobodyさん
2006/03/27(月) 00:16:25ID:???OSのファイルを読み込むIOが、1つの巨大なファイルより、小さなファイルサイズのを複数読み込む方が楽かな?と思ったんで・・・
ちなみに、データを1つ書き込むと、DBとの接続はいちいち切断するようなシステムなんで、ファイルオープンによるネックはどちらの方法でも同じになると思います。
数に関しては、とりあえず内部できちんと管理してるんで、複雑になっても大丈夫とは思います。
サーバ型ですか・・・
数は多いものの、高速性をそこまで要求しないので・・・
でもその中でも出来るだけ効率よくしたい
0514nobodyさん
2006/03/27(月) 00:18:15ID:???読み込み時にバッファに全体を突っ込むわけじゃないから
巨大なファイルでも、使用メモリもシーク時間もあまり変わらない希ガス
もちろん差はあるにはあると思うが・・・。
0515nobodyさん
2006/03/27(月) 00:40:50ID:???SQLite 2
http://pc8.2ch.net/test/read.cgi/db/1140827718
テーブルのレコード数が気になるが良いや。
0516nobodyさん
2006/03/27(月) 01:16:23ID:???うむ。dbの話で全くphp関係ないしね。
php的には1つのdbのほうが速くてメモリ使わないと思う。
0517nobodyさん
2006/03/27(月) 01:20:15ID:???その全ての変数に対して色々チェックを行いたいのですが、
どんな方法でやれば良いですか?
0519nobodyさん
2006/03/27(月) 01:47:06ID:???色々チェック();
}
0520nobodyさん
2006/03/27(月) 01:56:17ID:???0523nobodyさん
2006/03/27(月) 03:04:25ID:???catchを使うとかw
とりあえず使ってみる! とw
0524nobodyさん
2006/03/27(月) 03:21:20ID:???えらく効率が悪くて疲れるだけだが
0525nobodyさん
2006/03/27(月) 03:27:42ID:???0527nobodyさん
2006/03/27(月) 07:04:40ID:nzS1LlMVphp.iniにアップロードに関する容量の設定はあるのですが、見当がつきません。
引き続きお願いします。
0528nobodyさん
2006/03/27(月) 10:27:06ID:???0530nobodyさん
2006/03/27(月) 18:04:35ID:???functionの中にfunctionて入れれないんでしょうか?
エラーでてしまうのですが・・
0531nobodyさん
2006/03/27(月) 18:10:44ID:???間違いなくここは読んでいないね?
http://jp.php.net/manual/ja/language.functions.php
0532nobodyさん
2006/03/27(月) 18:11:22ID:???入れられるけど、内側のfunctionは
・その部分が実行されて初めて定義される
・それでいて結局はグローバルスコープに定義される
ってことに注意。
スコープ(名前空間)をわけるのには使えないよ。
0533nobodyさん
2006/03/27(月) 18:47:26ID:???二つのクラス(hage, hoge)があって、以下のようにhogeで作ったhageから、
hogeの$fooを参照したいのですが、かっちょいいやり方をPHP4.1を前提にして教えてくれ。
// hogeのコンストラクタで
Class hage {
function sage(){
// 自分を作ったhogeの$fooを参照したい。
}
}
Class hoge {
var $foo ;
var $hage ;
function hoge(){
$hage = new hage ; //hageを作る
}
}
0534nobodyさん
2006/03/27(月) 19:13:12ID:???var $creator
function hage(&$creator)
{
$this->creator = &$creator;
}
function &sage()
{
return $this->creator;
}
}
class hoge {
var $foo;
var $hage;
function hoge()
{
$hage = new hage($this);
}
}
0535nobodyさん
2006/03/27(月) 19:17:48ID:???ありがとうございます。実は自分もその方法を取っているのですが、
なんとなくクラスの概念として正しいのか躊躇していたので、質問させていただいたのでした。
0536nobodyさん
2006/03/27(月) 19:28:25ID:nzS1LlMV>php.ini の中を upload で検索してごらん
アップロードでなく、ダウンロードなのですが、関係あるのでしょうか。
>マニュアル嫁よー
一通り見たのですが、よく分からなかったので質問しています。
どなたか分かる方がいましたらお願いします。
0538nobodyさん
2006/03/27(月) 19:47:28ID:nzS1LlMV「サーバへのアップロードでなく、サーバからのダウンロードなのですが、関係あるのでしょうか。」
が正しいです。サーバへのアップロード制限は”upload_max_filesize ”や”post_max_size”があると思うのですが、サーバからのダウンロードについては、”memory_limit”くらいしか思いつきません。
0539nobodyさん
2006/03/27(月) 20:08:49ID:???関数の中で使われたローカル変数は
関数を抜けて別の関数に処理が移ると、その場で解放されるのでしょうか?
unsetするのと同様に、そのままメモリ領域が増えるのでしょうか?
0541nobodyさん
2006/03/27(月) 20:42:58ID:???テーブルタグで半角の連続した文字列によるレイアウト崩壊を防ぐ方法ってありましたっけ?
例えば
<TD width="10">AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA</TD>
とやると明らかに10ピクセルを超えてもセルは折り返されませんよね。
これを折り返す様な方法ご存知の方いらっしゃいましたらご伝授下さいませ。
逆に折り返さない方法なら nowrap とかあるのにその逆は長年HTMLやってますがありませんよね
0542nobodyさん
2006/03/27(月) 20:51:25ID:???長さ計算して改行を挿入したりするしかないかも。
0543nobodyさん
2006/03/27(月) 20:55:09ID:???0544nobodyさん
2006/03/27(月) 21:01:52ID:???IEはそういうタグがあるんですね(´・ω・`)
>>543
それも独自仕様のタグです(´Д⊂グスン
ブラウザの種類が増える弊害に直面した気がしましたorz
0547nobodyさん
2006/03/27(月) 21:09:35ID:???http://openlab.ring.gr.jp/k16/htmllint/htmllint.html
ここで100点とれるhtml書こうよ
0548nobodyさん
2006/03/27(月) 21:13:11ID:???少なくともFireFoxはムリみたいです
>>546
うん。流石にHTML書けたくらいでプログラミングできるとは思ってません;
ただ、スクリプト書いてるときにそれ対策をどうしようかと悩んで質問させて頂きました。
掲示板なのですが上に書いた手法で荒されたときとかを想定した対策です。
>>547
毎回細かい属性で減点喰らいまくってます(´Д⊂グスン
(でも書かなくても特別崩れない属性て書かない方がソースが軽くなる気がします
0549nobodyさん
2006/03/27(月) 21:17:01ID:???wbrは少なくともFireFoxとIEでは有効。
で、wbrつけて採点したら
> <WBR> は Mozilla または MSIE 用のタグです。
って言われますた・・・
0550nobodyさん
2006/03/27(月) 21:21:07ID:???0551nobodyさん
2006/03/27(月) 21:25:18ID:???そっちへ行ってきます。 板汚しスミマセンでした・・・
結果が出たら一応報告だけしに来ます ノシ
0552nobodyさん
2006/03/27(月) 21:26:27ID:???echo preg_replace_callback("/[A-Za-z\\-_]{21,}/",
create_function('$m', 'return wordwrap($m[0], 20, "<wbr />", true);'),
'AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA');
でもFirefoxとIEだけかよ・・・
0553nobodyさん
2006/03/27(月) 21:36:14ID:???0554nobodyさん
2006/03/27(月) 21:45:57ID:???それで自分で分割するコード書いて戻ってきてみれば>>552に素敵なコードが投稿されてるしorz
ちなみに自分で書いたらこうなりますた。
$txt = "AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA";
echo wordwrap($txt, n, "<br>\n", 1);
0555nobodyさん
2006/03/27(月) 22:24:47ID:???「アーッ!」なら出来るんだが・・・
0556nobodyさん
2006/03/27(月) 22:39:11ID:???0557nobodyさん
2006/03/27(月) 23:41:53ID:???0558nobodyさん
2006/03/27(月) 23:49:02ID:???PHPのバージョンは?5.0.4だったら、バグの可能性アリ。
http://pukiwiki.sourceforge.jp/dev/?BugTrack2%2F102
あたりを参考に。
TO ALL
マニュアル見ろとか、質問を良く読まずに適当に回答するのはやめましょう。
多分、php.iniの設定ではどうにもならんと思いますよ。
0559nobodyさん
2006/03/28(火) 07:30:05ID:???サーバで何か制限してあるんじゃないの
俺の環境では問題ない
content-lengthが取れてないとかじゃないよね
0564nobodyさん
2006/03/28(火) 10:25:46ID:???php.iniの設定によるけど。
0565nobodyさん
2006/03/28(火) 10:26:48ID:???0566nobodyさん
2006/03/28(火) 10:33:03ID:???それで落ちればphpが悪いし落ちなければ諦めなさいてことだし。
0567nobodyさん
2006/03/28(火) 13:33:17ID:NE/9pEIZいい方法ありませんか?
例:
$src="powapowa \"hoge fuga\" foo bar"
↓
$dst = array(
[0]="powapowa",
[1]="\"hoge fuga\"",
[2]="foo",
[3]="bar"
)
0568nobodyさん
2006/03/28(火) 13:36:12ID:???ただ、やりかたはCSVのクォートの除き処理真似ればいいよ。がんがって検索しれ
0569nobodyさん
2006/03/28(火) 14:08:19ID:???実はapacheのaccesslogを処理したいのです。
さっそく検索してみます。
ありがとうございました。
0572567
2006/03/28(火) 14:28:48ID:???調べてみたらCSVパースするPHP関数をみつけました。
http://www.kawaz.jp/pukiwiki/?CSV%A4%CE%A5%D1%A1%BC%A5%B9
>>570
それナイスですね。
会社のサーバなのでちょっと厳しいけど
0573nobodyさん
2006/03/28(火) 14:29:08ID:???それならファイルから読み込んで
<?php
$log_file = "C:/Program Files/Apache Group/Apache2/logs/access.log";
$fp = fopen($log_file, "r");
$log = fgetcsv($fp, 1024, " ", '"');
print_r($log);
fclose($fp);
?>
0574569
2006/03/28(火) 14:42:18ID:???まだまだ知らないことがいっぱいあるなあ( ∀ ) ・ ・
0575nobodyさん
2006/03/28(火) 15:23:55ID:???詰まることあるから頭の隅にいれとけ
0576nobodyさん
2006/03/28(火) 15:51:51ID:???textareaから受け取ったデータを変換するために
$str = str_replace("\r\n", "\n", $_POST['test']);
をしています。
ですが、
$str = "hoge\r\nhoge";
という文字列を
$str = "hoge\nhoge";
へ変換できなくて困っています。
またこの問題に付随して
for($i=0; $i<count($str); $i++){
printf("%s %X\n", $str[$i], $str[$i]);
}
これの%Xが0ばかり出てきます。
誰か助けて!
0577nobodyさん
2006/03/28(火) 16:36:47ID:???count()は配列の要素数を表すものであり
文字数を数えるものではないので
1度しかループしないように思うのですが・・・
もしそうであればcount()をstrlen()に変えればOK
で、%Xは数値→16進数の変換なので非数値は当然0になる。
文字をアスキーコードに変換したいのならord()を使いましょう。
0578nobodyさん
2006/03/28(火) 16:38:34ID:???$str = str_replace("\r\n", "\n", $_POST['test']);
じゃなくて
$str = str_replace("\r\n", "\n", $str);
だろ
$strは文字列だからcount($str)は1だし
何がやりたいのかさっぱりわかりません
どうもありがとうございました
0579nobodyさん
2006/03/28(火) 16:45:15ID:???ごめんstrlenでやったんだった。
> $str = str_replace("\r\n", "\n", $_POST['test']);
> じゃなくて
> $str = str_replace("\r\n", "\n", $str);
に関しては、$_POST['test']に前ページのデータがくるの。
$_POST['test'] = "hoge\r\nhoge";
から
$str = "hoge\nhoge";
です。
素直にこぴぺすればよかったのに。
0580nobodyさん
2006/03/28(火) 16:56:51ID:???プロスラムは作った通りにしか動作しない
<?php
$_POST['test'] = "hoge\r\nhoge";
$str = str_replace("\r\n", "\n", $_POST['test']);
$n = strlen($str);
for ($i=0; $i<$n; $i++){
printf("%s 0x%02X\n", $str{$i}, ord($str{$i}));
}
?>
普通に表示される
0581nobodyさん
2006/03/28(火) 16:57:40ID:???orz
0582576
2006/03/28(火) 17:00:13ID:???また文字についてもord()で見れました。
でも改行コードのアスキーが出てこなかったので残念でした。
0A NL 0D CR
この辺出てくるかと思ったんだけどなぁ・・・、なぁ・・・・('A`)
0586384
2006/03/28(火) 19:06:57ID:???また質問なのですが、phpにデータベースの内容を読み込みたいのですが、
test.dat(DB)に
aaa,123,xxx,xxx
bbb,234,xxx,xxx
ccc,345,xxx,xxx
…
と複数行にデータがある場合で「234」だけを表示するために、
「printする行と列を指定する」にはどうすればいいですか?
もしくは、IDが「bbb」と入力されていた場合は「$idがbbbならその次のデータ(234)を表示」とするのでしょうか?
0587nobodyさん
2006/03/28(火) 19:22:51ID:???str_replace を使うところまではわかったのですが
$comment = str_replace();なかんじで()内はどのように書けばいいのでしょうか?
0588584
2006/03/28(火) 19:25:56ID:???簡単にできました。
すいませんでした。
0592nobodyさん
2006/03/28(火) 19:57:03ID:???申し訳ありません。説明不足でした。
現在複数書き込める掲示板をPHPで作成しています。
保存方法はテキストを利用して
$write_data = $name."<>".$title."<>".$color."<>".$comment."<>".$pass."<>".date("Y/m/d H:i:s")."\r\n";
こんな感じで書き込みをしています。しかし、複数行書き込めるTEXTAREAに複数行(エンターで改行)で書き込むと
スレッドがいくつも作成されて、$passデータが題名のところにでてしまったり変になってしまいます。
そこで、対応策にstr_replaceというものを使うと言う事まではわかったのですが、
str_replaceの使い方がよくわかりません。どのように使えば複数行で表示することができるのでしょうか?
ファイル書き込みは一行ずつで。
0593nobodyさん
2006/03/28(火) 20:01:20ID:y7+D/qxUTHANKSです。ビンゴでした。
当方の5.0.3を使っており、readfileを使うとダウンロードが途切れてしまっていたようです。
freadに置き換えて、正常に動くようになりました。
どうもありがとうございました。
本当に困って質問したのに、「マニュアルよめ」とか、「質問厨」とか言われて
ちょっと悲しかったです・・。
0594nobodyさん
2006/03/28(火) 20:06:25ID:???0595nobodyさん
2006/03/28(火) 20:06:57ID:???データを保存する前にnl2brしましょう。
>>593
まじめに質問するなら本スレへ。
ここは下らねぇ質問で雑談するところ。
自分の意にそぐわない回答をもらったからといっていちいちヘコまない。
0596nobodyさん
2006/03/28(火) 20:08:16ID:???0597nobodyさん
2006/03/28(火) 20:13:24ID:???0599nobodyさん
2006/03/28(火) 20:56:09ID:???httpdもApacheとIISとで試してるぐらいなんだから
PHPもバージョン変えて色々と試してみれば良かったのに...
0600nobodyさん
2006/03/28(火) 20:57:42ID:???>stringに含まれるすべての改行文字の 前に '<br />' を挿入して返します。
「挿入」なので改行は残ってしまうと思ったんだが・・・。
0601nobodyさん
2006/03/28(火) 20:59:12ID:???0602nobodyさん
2006/03/28(火) 21:09:03ID:QKqhyHFD$comment = str_replace("\r\n", "\r", $comment);
$comment = str_replace("\r", "\n", $comment);
$comment = str_replace("\n", "<br>", $comment);
と
$write_data = $name."<>".$title."<>".$color."<>".nl2br($comment)."<>".$pass."<>".date("Y/m/d H:i:s")."<>".$no."\r\n";
を入れてみました。
0603nobodyさん
2006/03/28(火) 21:18:20ID:???プラグインなんですが、PHP ECLIPSEとTrustStudioIDEとでは、どちらがお勧めですか?
Trustの方だと、ApacheとPHP入って無くても、Eclipse標準のデバッグ実行で、実行出来ますよね。
ただ、Smartyのライブラリ使ってるのですが、これのインクルードパスを追加する使い方が分からないのがネックです。
可能なんでしょうか?
0604nobodyさん
2006/03/28(火) 21:22:44ID:???$comment = str_replace("\r\n", "<br>", $comment);
$comment = str_replace("\r", "<br>", $comment);
$comment = str_replace("\n", "<br>", $comment);
じゃダメなのか?
0606nobodyさん
2006/03/28(火) 21:54:19ID:iO8KuNQe0607nobodyさん
2006/03/28(火) 21:54:55ID:???あきらかにスレ違いっていうのには気付こうや。
http://pc8.2ch.net/test/read.cgi/php/1123912762/
■ このスレッドは過去ログ倉庫に格納されています