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

【PHP】ID出さなくても質問OKなスレ【初心者歓迎】

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん2008/09/15(月) 18:41:32ID:???
まず読め→【PHP マニュアル】http://www.php.net/manual/ja/
PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。
過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
0166nobodyさん2008/10/16(木) 12:14:23ID:???
>>165
使ったことあるなら分かるはずだが
$text // textareaの内容
$text = str_replace("\r", '', $text);
$text = str_replace("\n", '', $text);

\rと\nを空白に置き換えれば複数行が一行になる
文字が詰まるのがイヤなら、スペースとかに置き換えればいい
0167nobodyさん2008/10/16(木) 12:33:46ID:???
>>166
なるほどありがとうござます。
試してみます。データベースに入っているものには、
改行コードが付いているんですね。
0168nobodyさん2008/10/16(木) 18:29:44ID:???
いや消しちゃったら表示する際に元に戻せないじゃん
いらないんならいいけどそしたらフォーム関係ない
0169nobodyさん2008/10/16(木) 20:57:21ID:???
DBに入れるときに別のものに置き換え、表示するときに戻せばいいじゃないですか。
0170nobodyさん2008/10/16(木) 21:00:01ID:???
なぜ置き換える必要があるのですか。
0171nobodyさん2008/10/16(木) 22:09:25ID:???
改行コード←→<BR>
0172nobodyさん2008/10/18(土) 22:48:07ID:???
PEARって企業で普通に使われているんですか?
0173nobodyさん2008/10/18(土) 23:16:00ID:???
企業による
0174nobodyさん2008/10/19(日) 00:34:14ID:???
状況による
少なくとも企業でも使える完成度
0175nobodyさん2008/10/20(月) 14:37:43ID:???
完成度にもよるが企業内にある
完全独自FWとかライブラリより使えると思うぞ
0176nobodyさん2008/11/01(土) 03:48:07ID:???
質問したいのですが、どなたか居られますでしょうか?
0177nobodyさん2008/11/01(土) 11:23:39ID:???
潜んでるぜ
0178nobodyさん2008/11/01(土) 14:31:49ID:???
あ、すいません。ここで質問しました。
http://pc11.2ch.net/test/read.cgi/php/1219842559/
502が私です。あまり私一人が独占するのもどうかと思ったのですが…。
どうしましょうか、こちらに移動したほうが宜しいでしょうか?
0179nobodyさん2008/11/01(土) 15:18:30ID:???
それなりにレス出てるからそっちで続けて
0180nobodyさん2008/11/02(日) 18:42:00ID:0XM0D6GF
すんごい初心者の質問ですいませんが
eclipseにプラグインできるsmartyのtplファイルを記述する
エディタはありますか
あるとすればオススメはどれでしょうか?
smartyEditorというののjarファイルをeclipseのpluguinsフォルダに入れて
コマンドプロンプトからeclipse.exe -cleanを実行したのですがコードの色が変わりません
0181nobodyさん2008/11/04(火) 12:40:57ID:???
>>180
Eclipseのバージョンとか書かないとわからん
phpeclipseは確かできたと思うが
どこまで出来たかは忘れた
0182nobodyさん2008/11/10(月) 20:00:01ID:???

           ,-‐-、      ,.-‐-、
              \_, ,_/
 カサカサ...    /〓癶( ;:゚;〓;゚;)癶
       ー=癶(癶( 癶;;:;;ノ癶     カサカサ...
0183nobodyさん2008/11/11(火) 17:39:13ID:???
PHP4環境では問題無く使えてた画像掲示板が
PHP5環境にすると画像表示しなくなり、投稿もできなくなりました。
レッツPHPの画像掲示板なんですけど。
0184nobodyさん2008/11/11(火) 17:43:05ID:???
それはお困りですね
0185nobodyさん2008/11/11(火) 17:59:06ID:???
おそらく原因はPHP4環境だったものがPHP5環境になったからではないでしょうか?
解決してよかったですね
0186nobodyさん2008/11/11(火) 23:42:25ID:???
ひでぇw

まぁどちらにせよレッツPHPさんに対応してよと言うか
自分で改造するか

ウノウラボにphp4から5へスクリプトを移行させるツールがあったと思うが
レッツPHPの場合スクリプトが3ベースで4に対応させたって場合もあるから微妙
0187nobodyさん2008/11/17(月) 00:03:25ID:???
今PHPはじめました。
まずはデバッグプリントできるようにしようと思い、

<?php

echo(error_log("test"));

?>

こんなソースを書いてみました。

php.iniは、
log_errors = On
error_log = "C:\Program Files\PHP\error.log"

こうなってるのですが、どこにも吐かれてないみたいです。
echoの返り値は1なので、正常にログ吐けてるはずなのですが・・・。

あと何が足りないのでしょうか?
鯖はIISでCGIじゃなくてISAPIです。
0188nobodyさん2008/11/17(月) 00:18:54ID:???
>>187
よくわからないけどエラーを発生させないと記録されないんじゃ?
01891872008/11/17(月) 01:00:17ID:???
>>188
それが、どうもerror_log()はエラーの有無関係なく
ログ出力する関数らしいんです。

syslogだとイベントビューワに吐かれるらしいのですが、
できればテキストに落としたいんですよね。
こんなところで躓くとはorz
0190nobodyさん2008/11/17(月) 01:04:08ID:???
>>187
第2引数で3を指定して第3引数でファイル名を指定すると
そのファイル名に記録されるみたいだけど
http://jp.php.net/manual/ja/function.error-log.php
0191nobodyさん2008/11/17(月) 06:54:13ID:???
はまった

$arr = array(1,2,3,4);
foreach ($arr as &$value) {
if ($value == '3') { unset($value); }
}

としても値3を持つ配列の要素が削除されることはないんだなorz
noticeもwarningも出ないから、深いループの中をさまよいながら朝を迎えた
俺のニータイムを返せ〜
0192nobodyさん2008/11/17(月) 08:09:45ID:???
初心者的な質問ですいません
メソッド内で定義した変数を別メソッドに呼び出すにはどうしたらいいのでしょうか?
0193nobodyさん2008/11/17(月) 09:06:21ID:???
>>192
オブジェクト指向ははじめてですか?
0194nobodyさん2008/11/17(月) 09:08:43ID:???
>>187
表示したいならvar_dump
ログにはきたいならerror_log(var_export(内容,true),3,出力先);

>>192
function hoge() {
  global $hoge;
  $hoge += 1;
  return $hoge;
}
$hoge = 1;
var_dump($hoge,hoge(),$hoge);

こんな感じでglobal使えば出来るがお勧めしない
class等の概念を覚える良い機会だと勝手に思うので調べてみては
0195nobodyさん2008/11/17(月) 09:19:51ID:???
globalって・・・
0196nobodyさん2008/11/17(月) 09:37:11ID:???
>>195
メソッド内で定義した変数を別の方法で取得する方法ってあんの?
0197nobodyさん2008/11/17(月) 09:46:27ID:???
いろんなメソッドで参照するようなやつはメンバ変数にするのが普通です
0198nobodyさん2008/11/17(月) 09:53:44ID:???
>>197
それはクラスにした場合だろ?
まぁクラスにした場合でも
メソッド内で定義した変数をどうやって取得するんだよ
0199nobodyさん2008/11/17(月) 10:01:09ID:???
>>192は『メソッド』といってるわけだが・・・
関数とメソッドは厳密に言うと別物ですよ

class Hoge {
private $a = null;
public function setA($a) {
$this->a = $a;
}
public function getA() {
return $this->a;
}
}

$obj = new Hoge();
echo $obj->getA();
$obj->set("hoge");
echo $obj->getA();
0200nobodyさん2008/11/17(月) 10:13:42ID:???
>>199
それはメンバ変数に対するgetterを定義してるだけだろ?
class A {
 function test() {
  $hoge = 'a';
 }
}
このクラスA::test()内の$hogeを取得してみろよ
簡単に言うと質問に対する答えが違うんだよ

本来のメソッドの定義というのはクラスに対するメンバ関数等のことを言うが
初歩的な質問でと言ってる時点でメンバ関数とは考え難いわけだが?
0201nobodyさん2008/11/17(月) 11:04:11ID:???
>>200
別に答えが違ってないでしょう・・・
質問者は
>メソッド内で定義した変数を別メソッドに呼び出すにはどうしたらいいのでしょうか?
と聞いてるわけで
意訳するとメソッドAの変数hogeをメソッドBで呼び出したいということですよ
つまり同一クラスの場合メソッドAの変数hogeをメンバ変数に持ってきて
Bも同じメンバ変数を参照すればいいだけですし
別クラスのメソッドの場合でもgetterを用意しとけばそこから取得できるという話です
0202nobodyさん2008/11/17(月) 11:21:07ID:???
>>201
その意訳はあなたの持ってる常識の上での訳だよな?
質問者が何を意図してるかはあの質問では
正確な質問内容は俺にも解らないしあなたにも解らないと思うんだが?
0203nobodyさん2008/11/17(月) 11:40:43ID:???
解らないのなら答えが違うなんてよく大口叩けるなぁw
0204nobodyさん2008/11/17(月) 11:43:37ID:???
>>203
今出てる情報は
メソッド内で定義した変数を別メソッドに呼び出す
という事だけだぞ
この事と言ってる事は違うんだから答えは違うと思うが?
0205nobodyさん2008/11/17(月) 11:51:43ID:???
悪いけどもうめんどくさいんでレスしません
答えも違うということでいいので忘れて下さい
0206nobodyさん2008/11/17(月) 12:25:32ID:???
globalかメンバ変数使えで合ってるじゃない
それかReflector
0207nobodyさん2008/11/17(月) 16:45:27ID:???
preg_match_all("/<dt>(.*)/", $a, $b);
『"/<dt>(.*)/"』この部分の説明をどなたかお願いします。
0208nobodyさん2008/11/17(月) 16:57:41ID:???
<dt>から改行まで全てマッチさせる
aaa<dt>abc
の場合はabc
<dt>aaa
sss
の場合はaaa
<dt>
の場合は空
02092072008/11/17(月) 17:02:32ID:???
>>208
有り難うございます。ということは、『/』これが改行に相当するのですか?
0210nobodyさん2008/11/17(月) 17:13:18ID:???
あんた、ID出す方の63?
02112072008/11/17(月) 17:36:48ID:???
>>208
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/php_k09.htm
>. 改行を除く任意の 1 文字
つか、こうなってますね。 どうもでした。
0212nobodyさん2008/11/17(月) 19:57:03ID:???
とうとう隠して質問するようになったか
02131872008/11/18(火) 01:28:17ID:???
error_logが書けないといっていた者です。
無事出力できるようになったので、ご報告します。

環境はXP Professional + IIS(ISAPI)です。
結局は、ディレクトリに書き込み権限がないだけでした。

デフォルトだと、ユーザ毎に権限付与するセキュリティタブが
ディレクトリのプロパティに表示されないので、
ツール→フォルダオプション→表示で、
「簡易ファイルの共有を使用する」というチェックをはずします。

その後、ログを出力したいディレクトリで、インターネットユーザの
書き込み権限を加えてやります。(IUSR_で始まるユーザ)

あとは、PHP.iniに、
log_errors = On
error_log= "C:\\path\\to\\logfile"
こんな感じでログを出したいディレクトリを指定します。

すると、
error_log("test log");
と書くだけで、指定のログファイルに日時つきでログが書き込めます。

長くなりましたが、色々教えてくださった皆さん、どうもありがとうございました。
またお世話になるかもしれませんが、どうぞよろしくお願いします。
0214nobodyさん2008/11/20(木) 12:32:32ID:???
たくさんつまってる配列があって
$abc[AAA][0]〜$abc[AAA][1000]
$abc[BBB][0]〜$abc[BBB][1000]
$abc[CCC][0]〜$abc[CCC][1000]

$abc[BBB][18]を複数箇所で使いたい場合
$XXX=$abc[BBB][18];
のように一度定義した方がいいのでしょうか?
それとも$abc[BBB][18]をそのまま何度も
使う方がいいのでしょうか?
0215nobodyさん2008/11/20(木) 13:14:15ID:???
保守性可読性以外は同じ
0216nobodyさん2008/11/20(木) 13:41:09ID:???
とても助かりました
0217nobodyさん2008/11/20(木) 15:26:21ID:qEbDDWFR
始めまして。PHPとMySQLでサイト作ってます。
今登録画面を作ってまして、登録画面ではフォームのプルダウンメニューで「親カテゴリ」と「子カテゴリ」を選ぶようになってます。
それで、うちのシステムでは親カテゴリと子カテゴリをMySQLでデータベースから引っ張ってきてるんです。
親カテゴリごとのIDがあり、子カテゴリは親のIDを保持する事で自分の親を判別するようになっています。

*問題はここからなんです。
登録画面で、プルダウンメニューで親カテゴリを選ぶと自動的に子カテゴリの中身が親カテゴリに属する子カテゴリのみに切り替わるようにしたいんです。
onChange="○○"ではjavascriptのメソッドしか呼び出す事が出来ないので、PHPでMySQLにアクセスして子カテゴリ群を引っ張ってくるという処理が出来ないんです。
なのでどうすればいいのかさっぱり……


挙動としては、よく登録画面で都道府県を選ぶと自動的に次のプルダウンで市区を都道府県に合わせたものに絞ってくれるじゃないですか?
あれをMySQLと連動した形で実現できないか、どなたが助言お願いします(たぶんスレ違いじゃないはず)。
0218nobodyさん2008/11/20(木) 15:49:08ID:???
>>217
松竹梅とある
Ajax>DHTML>画面のリロード
0219nobodyさん2008/11/20(木) 15:49:38ID:???
糞スレageるな
0220nobodyさん2008/11/20(木) 16:26:43ID:???
>>218
スタイルシートでの表示/非表示でも良くね?
0221nobodyさん2008/11/20(木) 16:41:00ID:???
DHTMLがそれなのか
0222nobodyさん2008/11/20(木) 20:03:04ID:???
JavaScriptでSQLという強引な技もあったと思うぞ
0223nobodyさん2008/11/21(金) 21:39:09ID:???
Windows XPにアパッチとPHP4の環境です。

ブラウザからアクセスして、PHPで処理中にブラウザを閉じたら、処理は止まるのですか?
それともアパッチからレスポンス返す直前までは処理は進むのでしょうか。
0224nobodyさん2008/11/21(金) 22:33:21ID:???
無限ループさせてブラウザを閉じてみればいいさ
処理は止まる
0225nobodyさん2008/11/21(金) 22:50:52ID:???
>>217
Ajaxによる非同期通信
もしくは動的にJavaScriptを生成する
0226nobodyさん2008/11/21(金) 22:53:30ID:???
>>214
リファレンスを上手く使うと、可読性が上がる事があるので覚えておくといいよ
$ref_array =& $array['hoge']['fuge'];
02272172008/11/21(金) 23:35:05ID:Z3cf5Bdj
>>218-222
皆さんありがとうございます。松竹梅の松としてAjaxが一番適してるかな、と思いました。
っていうか今までAjaxという便利な(開発はちょっとだるいけど)技術があったなんて…… 
調べたら今ではAjaxぐらい当たり前らしいのに、それを知らなかったなんて恥ずかしい。
JavaScript+SQLも調べてみたら結構使えそうな場面がありそうです!
このスレのおかげでシステム開発新しい境地が開けた気がします(なんて言ったら大げさかw)

ありがとうございました!
02282252008/11/22(土) 00:12:26ID:???
せっかくのところ悪いのだが、そのDBから引っ張り出したいものが頻繁にUPDATEされないデータなのであれば、
>>225に書いたみたいに動的にJavaScriptを生成した方がいいよ。
DBのデータからJSの配列を動的に作って、それを元に動的にFORMタグ内のSELECTメニュー作るようなイメージかな?
なんか良いサンプルコードでもあればいいが。
0229nobodyさん2008/11/24(月) 03:29:48ID:qgmjaVwu
PHPでダウンロード販売サイトを作ろうと思っていますが、
調べても分かりませんでした。
情報があればお願いします。
0230nobodyさん2008/11/24(月) 03:59:11ID:???
何の情報がほしいんだよ
PHPはどこまで理解してんの?
あと別にsageなくてもいいけど
糞スレageるな
0231nobodyさん2008/11/24(月) 21:45:36ID:???

Notice: Undefined variable: PHP_SELF in
Notice: Undefined variable: aclink in

というエラーが出たのですがどういう意味でしょうか?
他のサーバでは出なかったのですが・・・
0232nobodyさん2008/11/24(月) 21:51:17ID:???
英語の意味がわからないならせめて機械翻訳に突っ込めば?
0233nobodyさん2008/11/24(月) 21:56:37ID:???
未知の変数・・・・
でも、他のサーバではうまく動いたんだけどなあ
0234nobodyさん2008/11/24(月) 22:05:20ID:???
ねんとなく動いちゃうからPHPは恐ろしい
答えがほしいなら問題箇所のソースを出しなさいよ
0235nobodyさん2008/11/24(月) 22:18:40ID:???
ほい

<p class="uline"> | <a href="$home">Home</a> | <a href="$PHP_SELF?gal=0">File List</a> |
<a href="$PHP_SELF?mode=upload">Upload</a> | <a href="$PHP_SELF?gal=1">Gallely</a> |
<a href="$PHP_SELF?mode=ret">search</a> | <a href="$PHP_SELF?mode=rank">ranking</a> |
<a href="$PHP_SELF?mode=env">Setting</a> | <a href="$PHP_SELF?mode=admin">Admin</a> | </p>
MODELINK;

?>
0236nobodyさん2008/11/24(月) 22:25:07ID:???
$_SERVER['PHP_SELF]じゃなくて$PHP_SELFで使いたいなら
register_globalsをオンにしないと
0237nobodyさん2008/11/24(月) 22:35:16ID:???
アドバイスthxです。
ってかこれって鯖によって変わるの?
0238nobodyさん2008/11/24(月) 23:10:46ID:???
これはひどい
0239nobodyさん2008/11/24(月) 23:38:27ID:???
むしろ、いきなり$PHP_SELFこんなやり方があったことを知らなかった
register_globalsとかいうのをオンにすると自動的に入るとは・・・
0240nobodyさん2008/11/25(火) 00:09:35ID:???
いや、ONにはするなむしろoffにしろ
セキュリティ上あまりよろしくない
0241nobodyさん2008/11/25(火) 12:59:37ID:???
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?gal=0">File List</a>

にしたけど、違うエラーが出るな・・・・変なところありますか?
0242nobodyさん2008/11/25(火) 13:35:39ID:???
何のエラーが出たのか書いてくれ

自分なら
<a href="<?php echo $_SERVER['PHP_SELF']."?gal=0"; ?>">File List</a>
にするけどたぶん同じエラーが出るだろう
0243nobodyさん2008/11/25(火) 13:37:26ID:???
長いですけど

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in
0244nobodyさん2008/11/25(火) 13:43:43ID:???
>>235から察するに
echo <<<MODELINK;
が
echo <<< MODELINK;
とかになってやしないか?
とにかく>>241の箇所には問題はない
02452442008/11/25(火) 13:45:11ID:???
ヒアドキュメント開始にセミコロンはいらないか
0246nobodyさん2008/11/25(火) 13:56:23ID:???
>>244
ありがとうございます
PHP_SELFの行をゴッソリ抜くと、エラーが出なくなるので、そこ以外に原因が考えられないんです
0247nobodyさん2008/11/25(火) 14:02:28ID:???
関係ないいいけど$_SERVER['PHP_SELF']を適当な変数に代入して使うな俺なら
>>243のエラーはかわらないだろうけど。もう全部の文張ってくれ。

<?php
〜略〜
<a href="<?php echo $_SERVER['PHP_SELF']."?gal=0"; ?>">File List</a>
〜略〜
?>
こんなことにはなってないよね?
0248nobodyさん2008/11/25(火) 14:13:48ID:???
こんな感じです

<?php
〜略〜

MAINUP;
$modelink = <<<MODELINK
<p class="uline"> | <a href="$home">Home</a> |
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?gal=0">File List</a> | <--- 126
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?mode=upload">Upload</a> |
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?gal=1">Gallely</a> |
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?mode=ret">search</a> |
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?mode=rank">ranking</a> |
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?mode=env">Setting</a> |
<a href="<?php echo $_SERVER['PHP_SELF']; ?>?mode=admin">Admin</a> |
</p>
MODELINK;


〜略〜
?>

エラー

Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in
〜〜〜〜htdocs/config.php on line 126

0249nobodyさん2008/11/25(火) 14:20:33ID:???
>>247
エスパー様!
0250nobodyさん2008/11/25(火) 14:22:53ID:???
よくわかんないけどこれで動かない?
<?php
〜略〜

$PHP_SELF = $_SERVER['PHP_SELF'];
MAINUP;
$modelink = <<<MODELINK
<p class="uline"> | <a href="$home">Home</a> |
<a href="$PHP_SELF?gal=0">File List</a> | <--- 126
<a href="$PHP_SELF?mode=upload">Upload</a> |
<a href="$PHP_SELF?gal=1">Gallely</a> |
<a href="$PHP_SELF?mode=ret">search</a> |
<a href="$PHP_SELF?mode=rank">ranking</a> |
<a href="$PHP_SELF?mode=env">Setting</a> |
<a href="$PHP_SELF?mode=admin">Admin</a> |
</p>
MODELINK;

〜略〜
?>
0251nobodyさん2008/11/25(火) 14:23:06ID:???
突っ込みどころ満載だな・・・
phpの変数内のヒアドキュメントで<?php echo〜なんて書いたら文字列として扱われる
ヒアドキュメント内の変数で配列変数[]を使う場合{}で囲わないといけない
<a href="{$_SERVER['PHP_SELF']}?gal=0">といった感じに変更してみてくれ
02522512008/11/25(火) 14:34:09ID:???
配列がっていうわけではなくて配列のキーが文字列だったらってことだな
よく確認してなかったスマン
ようするに$a[0]なんかは直接かけるが
$a["0"]は{$a["0"]}にしないとだめ
ヒアドキュメント内や文字列の中で変数を使う場合は{}で囲むこと推奨
0253nobodyさん2008/11/25(火) 14:42:15ID:???
>>250
駄目でした
Parse error: syntax error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in
〜〜〜〜htdocs/config.php on line 123


$PHP_SELF = $_SERVER['PHP_SELF'];  <----123
MAINUP;
$modelink = <<<MODELINK
<p class="uline"> | <a href="$home">Home</a> |
<a href="$PHP_SELF?gal=0">File List</a> | <--- 126
<a href="$PHP_SELF?mode=upload">Upload</a> |
<a href="$PHP_SELF?gal=1">Gallely</a> |
<a href="$PHP_SELF?mode=ret">search</a> |
<a href="$PHP_SELF?mode=rank">ranking</a> |
<a href="$PHP_SELF?mode=env">Setting</a> |
<a href="$PHP_SELF?mode=admin">Admin</a> |
</p>
MODELINK;
0254nobodyさん2008/11/25(火) 14:47:55ID:???
MODELINK; の頭に半角スペース入れてない?
0255nobodyさん2008/11/25(火) 19:28:50ID:???
$PHP_SELF = $_SERVER['PHP_SELF'];  を別のphpのなかで定義したら無事出来ました。ありがとうございました
0256nobodyさん2008/11/25(火) 20:42:03ID:???
>>255
$_SERVER['PHP_SELF']は使わないほうがいいよ。
使うならこっち。$_SERVER['SCRIPT_NAME']
0257nobodyさん2008/11/25(火) 22:31:22ID:???
>>255
>>256も書いてるが、$_SERVER['SCRIPT_NAME'] を使うようにね。

他の人も書いてるが、ヒアドキュメント内で使う際は
必ず「{$_SERVER['SCRIPT_NAME']}」という感じで「{」と「}」で挟む癖をつけておくといい。
0258nobodyさん2008/11/26(水) 02:41:12ID:mfh7U9Yh
こんにちは。質問させてください。
URLの飛び先のソースを取得して、そのソースからstrip_tagsでタグ以外の部分を
抜き出したいのですが、何故かうまくいきません。
というのもタグ部分が残ったままで出力されてしまうのです。
自分のかいたプログラムは以下のようになっています。

<?php
$url = "http://〜〜〜〜";
$lines = file($url);
foreach ($lines as $line_num => $line) {
$text = htmlspecialchars($line);
$str = strip_tags($text);
$htmlstring = $htmlstring.$str;
}
echo $htmlstring;
?>

ためしに、手打ちで
$text='<a>ああ</a>いい<b>うう</b>';
とかやってみたのですが、その場合は
「ああいいうう」
とちゃんと出力されました。
何がいけないのでしょうか...。
0259nobodyさん2008/11/26(水) 03:04:17ID:???
<?php
$url = file_get_contents("http://localhost/");
$htmlstring = strip_tags($url);
print $htmlstring;
?>
0260nobodyさん2008/11/26(水) 03:04:51ID:???
なぜわざわざ3行に
0261nobodyさん2008/11/26(水) 03:07:29ID:???
<?php
$url = "http://〜〜〜〜";
$lines = file($url);
foreach ($lines as $line_num => $line) {
$str = strip_tags($line);
$htmlstring = $htmlstring.$str;
}
echo $htmlstring;
?>
0262nobodyさん2008/11/26(水) 04:03:18ID:???
<?php
class aaa
{
private $var = array(1,2,3,4);

public function __construct(array &$yyy=null)
{
$this->var =& $yyy;
var_dump($this->var); //array(4) { [0]=> int(5) [1]=> int(6) [2]=> int(7) [3]=> int(8) }
}

public function bbb()
{
var_dump($this->var); //object(aaa)#1 (1) { ["var:private"]=> &object(aaa)#1 (1) { ["var:private"]=> *RECURSION* } }
}
}

$xxx = array(5,6,7,8,);
$ref =& $xxx;

$ref = new aaa($xxx);
$ref->bbb();
?>

これがなんでこうなるのか、詳しく
コンストラクタの内部では$this->varはちゃんと代入されてるのに、
他のメソッド内ではなんでダメ?
0263nobodyさん2008/11/26(水) 04:07:01ID:???
態度をわきまえろ
0264nobodyさん2008/11/26(水) 07:25:28ID:vmBPQImx
phpでステップ数出す方法ってありますか?
OSはFreeBSDです。
できれば、コメントとか空白部分を除いたステップ数を計算したいです。
0265nobodyさん2008/11/26(水) 07:44:44ID:???
ぐぐれば色々あるみたいだけど?
■ このスレッドは過去ログ倉庫に格納されています