【PHP】下らねぇ質問はID出して書き込みやがれ 104
■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん
2011/02/14(月) 16:45:59ID:???過去スレ、関連スレ、FAQなどは>>2-10辺り
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。
◆前スレ
【PHP】下らねぇ質問はID出して書き込みやがれ 103
http://hibari.2ch.net/test/read.cgi/php/1295956018/
◆質問用テンプレ
【OS名】CentOS
【PHPのバージョン】5.3
【連携ソフトウェア】MySQL ImageMagick
【質問内容】
◆質問する時の注意
・ スレを上げて自分のIDを表示させること。(メール欄に何も記述しない。専ブラのsageチェックを外す)
・ 己の行った操作、変更などを詳しく明記すること。
・ エラーメッセージはそのまま表記すること。「エラーが出ます」だけでは回答不可。
・ 質問者として、態度をわきまえること。
・ 事前に関連リンクの公式マニュアル、リファレンス本くらいはちゃんと目を通しておくこと。
(PHPで最良の教本はこの公式マニュアル。市販の書籍は嘘が多いので鵜呑みにしない。)
◆質問後の注意
・2回目以降は最初に質問した際のレス番号を入れて、偽者防止に必ずIDを表示させること。
・解決しなくても回答をもらった場合はお礼を言うこと。
(荒らし、煽りは除く。煽られたときも、無闇に反論せずスルーすること。)
◆回答者への注意
・誰にレスしているのか分からないと困るので、>>(アンカー)をつけて回答すること。
【その他諸注意】
・SQL・正規表現・PEAR・テンプレート(Smarty等)・フレームワークは各該当スレへ
0168nobodyさん
2011/02/18(金) 17:19:54ID:NY+ifgVH【PHPのバージョン】5.2.14
【質問内容】
PHP + SFTPでファイルを送信したいと考えています。
pecl ssh2のコンパイルが難しそうなので、PuTTY付属のplinkで何とかしたいのですが、
exec('plink -P ポート -l user -pw pass 11.11.11.11')
でログインした状態のplinkにメッセージを送る方法が分かりません。
何かよい方法があればご教示ください。よろしくお願いします。
0171nobodyさん
2011/02/18(金) 18:42:58ID:TKcD2AZD携帯からPOSTされる文章の改行コードって"\n"でしょうか?
それとも"\n\r"(?)でしたでしょうか?
機種によって違うのでしょうか?
携帯ややこしいです。
0172nobodyさん
2011/02/18(金) 18:55:08ID:fb4Kr5zE【PHPのバージョン】5.3.5 (VC6 X86 32bit) + PEAR
【連携ソフトウェア】
pdo_mysql / mysqlnd 5.0.7-dev - 091210 - $Revision: 304625 $
MySQL 5.5.8 (Community Server) / Apache 2.2.17 / XAMPP (Basispaket) 1.7.4
【質問内容】
$stmt = $dbh->prepare('SELECT 2011');
$stmt->execute();
var_dump($stmt->fetchColumn());
以上のコードを実行すると int(2011) と表示されます
PHP Manual によると string 型で返るはずですが、int 型で返ってしまいます
仕様通り string 型で返すにはどうすれば良いでしょうか
http://www.php.net/manual/ja/pdostatement.fetchcolumn.php
0173nobodyさん
2011/02/18(金) 18:55:56ID:???> exec('plink -P ポート -l user -pw pass 11.11.11.11')
> でログインした状態のplinkにメッセージを送る方法が分かりません。
誰が何にログインした状態を想定しているのかを教えてください。
0174nobodyさん
2011/02/18(金) 19:00:36ID:???$stmt = $dbh->prepare('SELECT 2011');
$stmt->execute();
//
$result = $stmt->fetchColumn();
//
var_dump( $result );
//
if ( is_integer( $result ) ) {
:
:
var_dump の仕様についての問い合わせですか?
何の仕様についての問い合わせですか?
質問の対象がぼやけ始めています。
0176168
2011/02/18(金) 19:05:29ID:???ありがとうございます。
それもpeclなので、コンパイルできずちょっと難しそうです。
WSHでも出来ないようで困りました…
>>173
SFTPを使用するためにuserがサーバにSSHでログインした状態です。
0180。 ◆oDupeixhZv52
2011/02/18(金) 20:01:32ID:???全機種調べる気力もなければ、今後の機種もどうなるか分からないので、
どっちでもいいようにプログラム組めってことですよね。
0181nobodyさん
2011/02/18(金) 20:16:15ID:???0182nobodyさん
2011/02/18(金) 20:19:58ID:???if (PHP_SAPI != 'cli') {
die("Please run this test from CLI!\n");
}
ini_set('display_errors', 1);
ini_set('output_buffering', 0);
error_reporting(-1);
if (!ini_get('safe_mode')) {
set_time_limit(1);
}
echo "Testing float behaviour. If this script hangs or terminates with an error ".
"message due to maximum execution time limit being reached, you should ".
"update your PHP installation asap!\n";
echo "For more information refer to <http://bugs.php.net/53632>.\n";
$d = (double)"2.2250738585072011e-308";
echo "Your system seems to be safe.\n";
0183nobodyさん
2011/02/18(金) 20:40:20ID:???新時代の言語
0184nobodyさん
2011/02/18(金) 21:15:22ID:???0185nobodyさん
2011/02/18(金) 23:20:30ID:???0186nobodyさん
2011/02/19(土) 09:10:39ID:Gww6mUql$fuga = 'fuga';
みたいなのがあって何度も「$hoge . $fuga」を使いたいときは
$piyo = $hoge . $fuga;
としてから「$piyo」を使うほうがいいんですよね?
スーパーグローバル変数はこんなふうに別の変数に入れなおさなくてもいいんですか?
本当にくだらないかもしれませんがよろしくおねがいします
0188nobodyさん
2011/02/19(土) 09:35:43ID:Gww6mUql186の例だと短い文字列の連結だけなのでたいした違いはないと思いますが
「$hoge . $fuga」じゃなくもっと複雑な処理をしたあとの結果を何度も使う場合は
その結果を変数に入れておけば毎回複雑な処理をしなくて済むんですよね?
無駄な処理をしなくて済んで効率的だという意味の「よい」です
スーパーグローバル変数は、処理がされた結果が入っているのか、
たとえば$_SERVER['REMOTE_ADDR']と書くたびにREMOTE_ADDRを取得しに行くのか、
後者なら変数に入れなおす必要があるのかな、と思いました
関数じゃなくて変数だから結果が入っているのかな・・・?
0189nobodyさん
2011/02/19(土) 09:50:02ID:???処理をすることによるCPU負荷を天秤にかければいいさ
0190nobodyさん
2011/02/19(土) 09:58:14ID:???知りたいのは、スーパーグローバル変数はすでに結果が入っているのかどうかということです
188の最後の行で正解ですか?
0191nobodyさん
2011/02/19(土) 09:58:28ID:???スーパーグローバル変数は、変数であるのであなたの杞憂するような
余計な処理というのは入っていない。単純に配列から取り出しているだけ。
見かけ上配列と同じArrayAccessインターフェイスのがあるが、こちらは
配列的アクセスしたとしても関数を呼び出すので、多少なりとも配列から
呼び出すのより遅くはなる。
それとグローバルの$hogeは$GLOBALS['hoge']と同じことなのだから、
たぶんほとんど差がない。
0192nobodyさん
2011/02/19(土) 10:05:38ID:???0194nobodyさん
2011/02/19(土) 10:08:35ID:???0195nobodyさん
2011/02/19(土) 12:40:59ID:???タブと半角スペースどっちが推奨ですか?
0197nobodyさん
2011/02/19(土) 13:06:27ID:???0198nobodyさん
2011/02/19(土) 13:33:20ID:???0199nobodyさん
2011/02/19(土) 13:36:56ID:???0200nobodyさん
2011/02/19(土) 14:02:24ID:???0201nobodyさん
2011/02/19(土) 14:15:37ID:???0202nobodyさん
2011/02/19(土) 14:27:22ID:???0203nobodyさん
2011/02/19(土) 16:04:54ID:???そういう質問をするとこういうのを見ろとか言う奴が出てくると思うが
http://framework.zend.com/manual/ja/coding-standard.php-file-formatting.html
↑ここではタブを使わずスペース4文字とか書いてある
個人的にはスペース2文字が好み
ネストが深くなってインデントが多くなっても右に寄り過ぎないのがいい
タブ使うと環境によって見え方が変わるから嫌い
0204nobodyさん
2011/02/19(土) 16:08:34ID:???0205nobodyさん
2011/02/19(土) 16:24:22ID:???0206nobodyさん
2011/02/19(土) 16:34:15ID:???0208nobodyさん
2011/02/19(土) 16:53:27ID:???まぁなーでも同じ処理を何度も行うわけではないのに関数化する意味はないよな
ネストが深いといってもこの程度の話だから
for(){
;
if(){
;
for(){
;
if(){
;
}
}
}
}
0209nobodyさん
2011/02/19(土) 18:38:26ID:???0210nobodyさん
2011/02/19(土) 19:11:51ID:???for(){
;
if(){
;
continue;
}
for(){
;
if(){
;
}
}
}
0211nobodyさん
2011/02/19(土) 19:13:53ID:???0212nobodyさん
2011/02/19(土) 19:14:51ID:???0214nobodyさん
2011/02/19(土) 19:36:13ID:???0215nobodyさん
2011/02/19(土) 19:37:16ID:???for ($i=0, $j=1, $k=0, $fib=0; $i<50; $i++, $fib=$j+$k, $j=$k, $k=$fib) {
echo $fib."<br>\n";
}
0216nobodyさん
2011/02/19(土) 19:37:42ID:???0218nobodyさん
2011/02/19(土) 19:39:26ID:???0219nobodyさん
2011/02/19(土) 19:55:29.65ID:???おまえさん、HTML書くときもwidth=800とかで固定するタイプだろ
width=100%で相手の環境に合わせようとは考えないタイプだ
俺もだよ
0222nobodyさん
2011/02/20(日) 00:30:48.59ID:???何を書き出してる?
質問の意図がよくわかりませんが、標準出力のことでしょうか。
ファイルやデータベース出力も利用しますが、画面表示なら標準出力を使っています。
0224nobodyさん
2011/02/20(日) 01:14:48.73ID:s/fCDBmlああいうサイトはどこにアクセスしてもCookieにログイン情報がない場合はログイン画面にリダイレクトされると思います。
あれは、各ページ全ての先頭でログインチェックをやっているということですか?
それとも、.htaccessかなんかで一括で前処理が出来るのでしょうか?
0225nobodyさん
2011/02/20(日) 01:43:38.10ID:???質問の意図が見えない。
何かをしたいから mixi だうんぬんを質問しているんだろ?
背景…自分が何をしたいかを正直に書いてはどうだろうか?
何らかの答えを求めるならば質問する理由を明確にしないと自分が欲しい回答が得られないのは当たり前のことです。
0228nobodyさん
2011/02/20(日) 02:45:28.82ID:s/fCDBmlありがとうございます
それでやってみます
>>227
ちょっとなに生きてるのかよくわからないです
0230nobodyさん
2011/02/20(日) 03:07:14.16ID:???自作自演でしか盛り上げられないかわいそうなやつなんだよ
残念な脳の持ち主であることは前々から言動を見ればわかっていたことなんだから
今更小突き回しても面白くないし華麗にスルーするのがよい
俺も含めてかまったら負け
0231nobodyさん
2011/02/20(日) 08:38:16.10ID:gro3cDqj三十歳 programmer 日藝出身 最寄り駅はさぎのみや駅もしくは阿佐ヶ谷駅
福岡県出身との情報があります。
連絡先・hayakudetekoi@hotmail.co.jp
困った奴ですね。
0233nobodyさん
2011/02/20(日) 11:22:18.24ID:6qTRErrufunctionは10個ほどあり、function外にincludeを置くと変数を読み込んでくれないので、function内で同じincludeを計10個書いています。
global 変数 とすれば読み込んでくれますが、設定項目が増えるとglobalも増やさなくてはいけないので面倒で。。
0234nobodyさん
2011/02/20(日) 13:24:40.04ID:???staticでアクセスする
0235nobodyさん
2011/02/20(日) 14:14:04.00ID:TBXYZPd+一般的に処理が重くなるのは、 saveなどの書き込み系で、
findなどはそこまで気にしなくて良いと考えていいでしょうか?
最近、ループの中でsave を何回も繰り返していたので、
一気にまとめて save Allとするようにしました。
0236nobodyさん
2011/02/20(日) 14:15:16.02ID:???0238nobodyさん
2011/02/20(日) 14:25:08.80ID:TBXYZPd+すいません。 cakePHPを使っているので、データベース関連の関数はsave とかで覚えてしまっていて。
0239nobodyさん
2011/02/20(日) 14:43:56.82ID:???0240nobodyさん
2011/02/20(日) 15:36:51.57ID:TBXYZPd+レスありがとうございます。
やはり、80000ぐらいのデータから findとかを繰り返すと重くなりますよね。
saveは重いだろうけど、 findは軽いだろうから大丈夫だと勘違いしてた気がします。
0241nobodyさん
2011/02/20(日) 21:34:15.34ID:xXHeI12pどう書けばいいですか?
<?php
echo a()[0]; //エラーが出ます
function a()
{
return array('b', 'c');
}
?>
0242nobodyさん
2011/02/20(日) 21:54:32.14ID:???0243nobodyさん
2011/02/20(日) 22:02:15.46ID:???基本的にには無理だし、a()[0]、a()[1] と別々に呼び出すと
a()関数を2回コールすることになるので無駄
どうしても1行で収めたいのなら別の関数を作ってそこからa()を呼び出すとか
function b($func, $var){$ret = $func(); return $ret[$var];}
echo b("a", 0);
0245nobodyさん
2011/02/20(日) 22:30:27.58ID:???0246nobodyさん
2011/02/21(月) 00:16:45.14ID:???0247nobodyさん
2011/02/21(月) 00:30:18.28ID:???こんなんでどうでしょうか
class hoge {
public $result;
public function foo() {
$this->result = array('aaa', 'bbb');
return $this;
}
}
$obj = new hoge();
echo $obj->foo()->result[0];
0248nobodyさん
2011/02/21(月) 00:36:24.71ID:???0250nobodyさん
2011/02/21(月) 01:03:08.65ID:???0253nobodyさん
2011/02/21(月) 01:40:18.09ID:???それするなら
class hoge {
public $result;
function __construct(){
$this->result = array('aaa', 'bbb');
}
}
$obj = new hoge();
echo $obj->result[0];
0254nobodyさん
2011/02/21(月) 01:46:22.22ID:???0255nobodyさん
2011/02/21(月) 01:55:13.43ID:???class hoge{public $result;function __construct(){$this->result = array('aaa', 'bbb');}}$obj = new hoge();echo $obj->result[0];
0256nobodyさん
2011/02/21(月) 02:01:00.32ID:???0257nobodyさん
2011/02/21(月) 02:02:57.42ID:???他社の巨大なWebシステムをカスタマイズしなきゃいけなくて、触れるコードがそこだけだとか、
なにか社内規約等の特別な理由で一時変数を用意できないだとか、
さあ、>>241さん、はりきって質問の趣旨をどうぞ!
0258nobodyさん
2011/02/21(月) 02:13:13.95ID:???オブジェクト脳が見たらどうみても不思議なコードだ
0259nobodyさん
2011/02/21(月) 02:14:45.10ID:???$ret=a();
func($ret[0], ...);
みたいに2行になるのが嫌なんだろ。a()[0]という書き方が許容されるなら
func(a()[0], ...);
だけで済むってことだと思うけど
0261nobodyさん
2011/02/21(月) 02:18:01.79ID:???オブジェクト脳からみて、func()[0]というコード片自体には違和感ないでしょ。それをどう実装するかって話で。
0262nobodyさん
2011/02/21(月) 02:26:07.93ID:???return $a[$n];
}
func(g(a(), 0));
0263nobodyさん
2011/02/21(月) 02:37:33.89ID:ryPTOETx</p>
<p>
東京メトロ各線 「赤坂見附駅」ベルビー赤坂口より徒歩約2分<br />
東京メトロ千代田線 「赤坂駅」1番出口より徒歩約3分</p>";
上記のような文字列の改行をのぞいて、すべて横一行にしたいです。
(こんな感じに)
東京メトロ各線 「赤坂見附駅」ベルビー赤坂口より徒歩約2分 東京メトロ千代田線 「赤坂駅」1番出口より徒歩約3分
$string = strip_tags($string);
$string = preg_replace('/ /', '', $string);
こんな感じでいろいろ試したのですが、2行目が上手くいかず。。
やり方をどなたか教えてもらえないでしょうか?
0264nobodyさん
2011/02/21(月) 02:40:19.46ID:???5.4ではなってるだろうな
0265nobodyさん
2011/02/21(月) 02:52:00.47ID:ryPTOETx実際には上記の記号が空白の / / の間に入っております。
0267nobodyさん
2011/02/21(月) 03:03:58.80ID:???0268nobodyさん
2011/02/21(月) 03:29:30.53ID:ryPTOETxありがとうございます!
$shopNearStation = strip_tags($item['shop_near_station']);
$shopNearStation = preg_replace('/[\r\n]/', '', $shopNearStation);
$shopNearStation = trim($shopNearStation);
結局こんな感じで上手くいきました!
本当は一発で出来るのかもしれませんが、正規表現がよくわからず三行に。
■ このスレッドは過去ログ倉庫に格納されています