のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:126,476,556人
昨日:no data人
今日:
最近の注目
人気の最安値情報

    私的良スレ書庫

    不明な単語は2ch用語を / 要望・削除依頼は掲示板へ。不適切な画像報告もこちらへどうぞ。 / 管理情報はtwitter
    ログインするとレス評価できます。 登録ユーザには一部の画像が表示されますので、問題のある画像や記述を含むレスに「禁」ボタンを押してください。

    元スレ【PHP】下らねぇ質問はID出して書き込みやがれ 76

    php スレッド一覧へ / php とは? / 携帯版 / dat(gz)で取得 / トップメニュー
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
    レスフィルター : (試験中)
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter
    451 : nobodyさん - 2008/11/22(土) 17:35:35 ID:??? (+55,+27,-17)
    トップページには出だしだけ切り取って表示すれば?
    452 : nobodyさん - 2008/11/22(土) 18:00:08 ID:??? (+71,+30,-287)
    >>450
    最近のMovableType4.2なんかだと「本文」と「続き」が別々のフォームで
    保存も別にされてる様子。

    1個の枠だけで「続きを読む」をやる場合は

    まず本文の文字数をチェック。

    本文が○文字より長い場合は、頭から○文字までを表示して
    一番最後に「…」みたいな省略がある事を明示する文字を付け足して
    レコードの個別IDを含んだ全文表示用リンクを表示する。

    そうでない場合はそのまま表示する。

    って感じだな。

    記事の要約をトップページに表示したり
    RSSへページの概要としても提供するなら
    短い説明文と本文は分けて置いた方が良いと思う。

    目次を表示する時に、各項目が「…」で省略されてるのは
    クリックするまで中身が完結しないから、目次として微妙になってしまう。

    わざと完結させないでPV増やすって技もあるかもしれないけど
    他のサイトの方が読みやすければ廃れるのも早いと思われ。
    454 : nobodyさん - 2008/11/22(土) 21:02:14 ID:??? (-1,-29,-5)
    自己フォローです。2.については自己解決しました。
    http://fdays.blogspot.com/2008/02/php5.html
    対話的操作なら、var_dump()で良さそうです。
    456 : nobodyさん - 2008/11/22(土) 21:27:11 ID:??? (+77,+25,+0)
    無理です
    458 : nobodyさん - 2008/11/22(土) 22:03:44 ID:??? (+15,+12,+0)
    場合による
    459 : nobodyさん - 2008/11/22(土) 22:05:15 ID:??? (+89,+29,-64)
    >>455
    他のサーバにアップロード用のプログラム用意して、socketで画像データをpostするとか
    勿論セキュリティ上出来ない場合もあるだろうし、何より改変は変数一つ書き換えるだけでは済まない
    460 : nobodyさん - 2008/11/22(土) 22:11:43 ID:??? (+52,+24,-29)
    他のサーバにPOSTするぐらいなら、ftpで保存先に送るシェルスクリプトを
    流すようにした方が多分作るのは楽だろw
    461 : nobodyさん - 2008/11/22(土) 22:13:32 ID:??? (+23,-4,-5)
    その保存したいサーバで実行すればいい
    463 : nobodyさん - 2008/11/22(土) 22:50:38 ID:??? (+71,+29,-13)
    >>456>>459
    そうなんですか・・・
    有難うございました
    465 : nobodyさん - 2008/11/23(日) 09:28:04 ID:??? (-1,-29,-6)
    ファイル偽装したいけどできないってこと?

    mod_mime_magicあたりが効いてるとかじゃないかな
    468 : nobodyさん - 2008/11/23(日) 12:42:11 ID:??? (+3,-29,-96)
    *nix系ならfileってコマンドでファイルのタイプが分かるよ。

    うる覚えだけどPHPからシェルコマンド実行する場合は
    配列かなんかで戻ってきて、確か1番目が名前かサイズ?で
    2番目とかにファイルタイプが入ってた様な気がする。

    もしかしたら改行で分割して自分で配列に入れてたかも。

    まあ細かい手順はともかく、*nix系なら、
    fileコマンドでチェックすれば、拡張子にかかわらずファイルのヘッダ見てくれる。
    469 : nobodyさん - 2008/11/23(日) 12:51:12 ID:??? (+57,+29,-16)
    普通に設定してたらありえなくねー?
    んなもんが余裕でできてたら今ごろ被害者続出だろ
    473 : nobodyさん - 2008/11/23(日) 17:01:02 ID:??? (+57,+29,-18)
    定義しなきゃ代入しちゃだめなんて誰が言ってたの
    474 : nobodyさん - 2008/11/23(日) 17:15:59 ID:I9fabXwC (-20,+29,-43)
    以前知り合いから聞きました。
    JavaやRubyではできませんから、自分もそうだと思ってました。

    PHPマニュアルで、これに関する記述を探していますが見つかりません。
    475 : nobodyさん - 2008/11/23(日) 17:18:17 ID:??? (+25,-2,-14)
    >問題なく動くようなのですが

    お前試してないだろ
    477 : nobodyさん - 2008/11/23(日) 17:49:13 ID:I9fabXwC (-13,-30,-147)
    追加の質問です。
    同じくcakeのソースで、このような記述が見つかりました。
    変数名をパラメタライズしている点で、可変変数に似ています。
    これについても、該当するPHPマニュアルを探しています。

    class Test {
      var $hoge = 1;
      function fuga() {
        $x = "hoge";
        var_dump($this->$x); //これはOK。
      }
    }

    $test = new Test();
    $test->fuga(); // OK。
    $y = "hoge"
    var_dump($test->$y); // これはNG.

    特に知りたいのは、レシーバが $this なら実行できて、$testのような実変数
    だと実行できない理由です。
    478 : nobodyさん - 2008/11/23(日) 18:17:42 ID:??? (+4,-28,-31)
    >特に知りたいのは、レシーバが $this なら実行できて、$testのような実変数
    だと実行できない理由です。
    実行できない理由は、そういう風に作られているから
    実行できないように作られた理由は、知らん
    479 : nobodyさん - 2008/11/23(日) 18:22:18 ID:??? (+55,+29,-90)
    前の方の
    >問題なく動くようなのですが
    は親クラスで何か定義されてるんじゃないの?

    >>477
    「クラスの中」と「クラス内のメソッド」と「外」は、
    それぞれスコープ違うよ。

    じゃ無いとインスタンスの内部に保存した変数が
    上書きされちゃって困るだろ。
    481 : nobodyさん - 2008/11/23(日) 18:35:37 ID:??? (+30,+4,-12)
    >>477
    なんでCakePHPスレから
    482 : nobodyさん - 2008/11/23(日) 18:35:38 ID:I9fabXwC (-17,+29,-151)
    >>479
    > は親クラスで何か定義されてるんじゃないの?

    されていません。>>476のコードをお試しください。

    > >>477
    > 「クラスの中」と「クラス内のメソッド」と「外」は、
    > それぞれスコープ違うよ。

    それは知っています。私は元々Java屋です。
    しかし、スコープが違うことと、
    $this->変数 は実行できても、変数->変数 が実行できないこととは
    あまり関係がないと思うのですが。


    いずれにせよ、これらの機能は、フレームワークのソースで使われているわけ
    ですから、undocumentedな隠し機能をではないだろうと思ったのですが、典拠
    を見つけられなくて困っているのです。
    484 : nobodyさん - 2008/11/23(日) 18:58:46 ID:??? (-29,-30,-137)
    class Test {
    var $hoge = 1;
    function fuga() {
    $x = "hoge";
    var_dump($this->$x); //これはOK。本来$thisは要らないけど、同じクラス内だから。
    }
    }

    $test = new Test();
    $test->fuga(); // OK。testインスタンス内のfugaメソッドを呼んでるから。
    $y = "hoge"
    var_dump($test->$y); // これはNG. $yはtestインスタンスの中に無いから。
    485 : nobodyさん - 2008/11/23(日) 19:08:59 ID:??? (+25,+29,-5)
    可変変数は関係なくて、難しく考えすぎてるだけじゃないの?
    486 : nobodyさん - 2008/11/23(日) 19:12:17 ID:??? (+1,-30,-65)
    >>477
    やってみたけどvar_dump($test->$y);も実行できたよ(int(1))

    > 特に知りたいのは、レシーバが $this なら実行できて、$testのような実変数
    > だと実行できない理由です。
    $y = "hoge"の末尾にセミコロンがない
    489 : nobodyさん - 2008/11/23(日) 19:29:12 ID:??? (+39,-30,-53)
    ああ、意味分かったよ。ゴメソm(__)m

    var_dump($test->$y);を
    var_dump($test->y);
    と思ってて、この人何言ってるんだろうと思ってた。

    var_dump($test->hoge());が
    $a = "hoge";
    var_dump($test->$a());
    って出来る筈なのに出来ないのは何故だーって話だったのか。
    490 : nobodyさん - 2008/11/23(日) 19:30:26 ID:CCu6AGm0 (+30,+28,-19)
    PHPってスタンドアローンのアプリ作れますか?
    491 : nobodyさん - 2008/11/23(日) 19:34:59 ID:??? (+35,-30,-154)
    >>490
    できない、って書こうとしたが、調べたらできるようだ。

    31. WinBinder でデスクトップアプリケーション:ITpro
    http://itpro.nikkeibp.co.jp/article/COLUMN/20070402/267112/

    > PHPで作れるGUIアプリケーションは、Webアプリケーションだけではありま
    > せん。 WinbBnderを使えば、Windows上でデスクトップアプリケーションを作
    > 成すること も可能です。
    493 : nobodyさん - 2008/11/23(日) 20:24:40 ID:??? (+44,+30,-54)
    確かに、どこに書いてあるんでしょうねぇ。
    リテラルの動作とブレスの動作はそれぞれ意味があって、
    不思議とは思わないんでスルーしてましたけど、
    どっかに公開されていてもいいはずですよね。
    Zendのテストにはその手の設問は結構あるから、日本語化されていないどこかに
    リソースがあるんでしょうけど。詳しい人いないですかね。自分も興味あります。
    494 : nobodyさん - 2008/11/23(日) 20:24:45 ID:??? (-23,-30,-44)
    >>492
    それは正式な仕様じゃないと思う。
    おっぱいが式の前にパースされて、たまたま動いてるだけかと。

    一手間増えても常に
    $y = "fugafuga";
    $hoge->$y;
    にしておいた方が安全。
    495 : nobodyさん - 2008/11/23(日) 20:25:45 ID:??? (+68,+30,-56)
    >>489
    失礼、レスし忘れておりました。
    私の質問の意図は、おっしゃるとおりです。

    > と思ってて、この人何言ってるんだろうと思ってた。

    Cakeスレの人たちもそのように誤解したのでしょうか。自分でははっきり書い
    たつもりだったのですが、実際は分かりにくかったようです…。
    496 : nobodyさん - 2008/11/23(日) 20:28:25 ID:??? (+40,+29,-5)
    書いてねーよ。内容といい嘘といい人に迷惑かけまくりな奴だな
    497 : nobodyさん - 2008/11/23(日) 20:30:02 ID:??? (+5,-3,-27)
    あぁ、ちなみに、仕様がどこに書いてあるかは知らないけど
    標準クラスの挙動が知りたいだけなら、Reflectionでソースを見ればだいたいわかる
    498 : nobodyさん - 2008/11/23(日) 20:30:32 ID:DgqkQkfl (-4,-30,-311)
    pagerの質問なんですが、現在のページの表示を変えられるということで
    ↓を試したんですが出来ませんでした。どこを直せばよいでしょうか?よろしくおねがいします。

    <?php $data = array(
    '1件目のデータ',
    '2件目のデータ',
    '3件目のデータ',
    '4件目のデータ',);

    require_once 'Pager/Pager.php';

    $params = array(
    'itemData' => $data,
    'perPage'=> 2
    "curPageSpanPre" => "[",
    "curPageSpanPost" => "]"
    );

    $pager = & Pager::factory($params);

    $pages = $pager->getPageData();
    $links = $pager->getLinks();

    foreach ($pager->getPageData() as $val) {
    echo $val . '<br>';
    }
    echo '<p>' . $links['all'] . '</p>';
    ?>
    499 : nobodyさん - 2008/11/23(日) 20:35:19 ID:??? (+3,-30,-34)
    > var_dump($test->hoge());が
    > $a = "hoge";
    > var_dump($test->$a());
    > って出来る筈なのに出来ないのは何故だーって話だったのか。

    出来るよ?
    500 : nobodyさん - 2008/11/23(日) 20:39:18 ID:I9fabXwC (-2,-1,-139)
    >>493
    おお、興味を持ってくれた方が。
    これはメタプログラミングに属する話題で、RailsのクローンであるCakeを成り
    立たせた重要な技術だと思うんです。

    >>494
    そうですね。これは避けます。
    そもそも、リテラルで呼び出すメリットはありませんから。
    (関数名が固定だったら、直接 fugafuga() と書けば良い)。

    >>496
    書いてますので、冷静に読み直していただいたら、別の見解があるかもしれま
    せん。つうか嘘って何?

    >>497
    よく分かりませんが、リフレクション機能のCのソースを読めとおっしゃってる
    のでしょうか?


    ご回答いただきありがとうございます。いったん所用でここを離れます。
    ←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / php スレッド一覧へ
    スレッド評価: スレッド評価について
    みんなの評価 :
    タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

    類似してるかもしれないスレッド


    トップメニューへ / →のくす牧場書庫について