のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,682,977人
昨日: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,+11,+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:??? (+21,-6,-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,-19)
定義しなきゃ代入しちゃだめなんて誰が言ってたの
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 (-14,-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,-89)
前の方の
>問題なく動くようなのですが
は親クラスで何か定義されてるんじゃないの?

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

じゃ無いとインスタンスの内部に保存した変数が
上書きされちゃって困るだろ。
481 : nobodyさん - 2008/11/23(日) 18:35:37 ID:??? (+29,+3,-13)
>>477
なんでCakePHPスレから
482 : nobodyさん - 2008/11/23(日) 18:35:38 ID:I9fabXwC (-17,+29,-150)
>>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,-155)
>>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:??? (+37,+29,-54)
確かに、どこに書いてあるんでしょうねぇ。
リテラルの動作とブレスの動作はそれぞれ意味があって、
不思議とは思わないんでスルーしてましたけど、
どっかに公開されていてもいいはずですよね。
Zendのテストにはその手の設問は結構あるから、日本語化されていないどこかに
リソースがあるんでしょうけど。詳しい人いないですかね。自分も興味あります。
495 : nobodyさん - 2008/11/23(日) 20:25:45 ID:??? (+68,+30,-56)
>>489
失礼、レスし忘れておりました。
私の質問の意図は、おっしゃるとおりです。

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

Cakeスレの人たちもそのように誤解したのでしょうか。自分でははっきり書い
たつもりだったのですが、実際は分かりにくかったようです…。
496 : nobodyさん - 2008/11/23(日) 20:28:25 ID:??? (+32,+29,-5)
書いてねーよ。内容といい嘘といい人に迷惑かけまくりな奴だな
497 : nobodyさん - 2008/11/23(日) 20:30:02 ID:??? (-5,-6,-27)
あぁ、ちなみに、仕様がどこに書いてあるかは知らないけど
標準クラスの挙動が知りたいだけなら、Reflectionでソースを見ればだいたいわかる
498 : nobodyさん - 2008/11/23(日) 20:30:32 ID:DgqkQkfl (-4,-30,-312)
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 (-18,-15,-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 スレッド一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

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


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