[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 12/03 04:20 / Filesize : 272 KB / Number-of Response : 1009
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

【PHP】下らねぇ質問はここに書き込みやがれ 5



1 名前:デフォルトの名無しさん mailto:sage [2016/05/11(水) 21:46:50.27 ID:e/4BOK4y.net]
PHPに関する下らない質問用避難スレです。
まず読むこと【PHPマニュアル】
www.php.net/manual/ja/

前スレ
【PHP】下らねぇ質問はここに書き込みやがれ 4 [無断転載禁止]©2ch.net
echo.2ch.net/test/read.cgi/tech/1457792733/
次スレは>>980が立てる。10分以内に立たない場合、宣言してから立てたい人が立てること。

752 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 19:58:20.79 ID:p2hTIoUv.net]
>>745
プロセスが生きている間においては「ロック残り」が発生するが、どうせ死ぬから問題ないというスタンスだとすれば、
max_execution_timeを0にした場合や、(初期値が0である)CLIの場合は生き続けるよ。

753 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 20:37:09.64 ID:SRdEl8UG.net]
HTMLとは
ハイパー テキストマークアップ ラングアゲ

754 名前:デフォルトの名無しさん mailto:sage [2016/06/12(日) 21:40:22.72 ID:ETS5lku+.net]
ランゲージ

755 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 09:32:27.21 ID:Mgx0zrpD.net]
今phpをステップ実行できるデバッガで便利なのってどのあたり?
ステップごとにそれぞれの変数の中身がどうなってるか簡単にわかるとうれしい

756 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 13:49:19.06 ID:XIduanRK.net]
array_filterで関数に他の引数も与えたい場合はどうしたらいいですか?

757 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 14:23:37.32 ID:TYgkMCrQ.net]
>>753
コールバックにオブジェクトメソッドを指定して、オブジェクトに他のパラメータを持たせるとか?

758 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 14:36:57.48 ID:TYgkMCrQ.net]
あんまやったことないけど、クロージャでやる方が簡単なのかね?

function my_array_filter(array $input, $param)
{
return array_filter(
$input,
function($var) use($param) {
return $var <= $param;
}
);
}

$a=array(1,2,3,4,5);

print_r(my_array_filter($a, 2));
print_r(my_array_filter($a, 4));

<実行結果>
Array
(
[0] => 1
[1] => 2
)
Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
)

759 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 15:15:41.61 ID:XIduanRK.net]
>>755
phpもクロージャ出来るようになってたんですね
ありがとうございます

760 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 16:04:29.44 ID:poUAr+t+.net]
Array→アレイ→アレ?→あれれ?
という発想が頭から離れなくて頭が基地外になりそうなんだけどプログラミングは向いてないよね?
ちなみに仕事はPG全く関係なくて異業種の作業員



761 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 18:18:38.79 ID:Mj2HqjrQ.net]
おでかけですか〜?

762 名前:デフォルトの名無しさん mailto:sage [2016/06/13(月) 18:53:18.04 ID:I48wzFwG.net]
おまえら、平和でいいな。

763 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 00:37:10.95 ID:e/1BDrQk.net]
>>757
電気屋さんとか電波屋さんと仲良くなれそう

764 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 02:04:02.36 ID:vpCPShaK.net]
配列をオブジェクト指向的に使うための組み込みクラスは何故ないのでしょうか?

765 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 03:26:27.75 ID:E92ohJVI.net]
ないんですか?

766 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 03:29:28.98 ID:sdXnBDtj.net]
>>761
当初はあまりオブジェクト指向じゃなかったという点と、
現状の array をそのままオブジェクトとして見なす変更をしてしまうと array を関数の引数に取る場合に他のオブジェクトの扱い(array はコピー渡し、オブジェクトは参照渡し)と一貫性が取れなくなるから、今更どうにもできないってところじゃね。

それより、関数が返す array を直接添え字でアクセスできないのをなんとかして欲しい。
ようは explode(',', $str)[1] みたいにやりたいわけだが、この改修ならほとんど問題無くできそうな気がするけどな。

767 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 03:34:56.83 ID:pjhL6UK+.net]
list(,$test)=explode(',', 'test1,test2,test3');
こうするのがせいぜいだが、これで妥協するか自分自身が開発に参加して改修するかだな

768 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 03:48:41.99 ID:E92ohJVI.net]
できないんですか?

769 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 05:18:59.07 ID:jLlAbvBE.net]
ArrayObjectとArrayIteratorならあるぞ

770 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 09:39:15.99 ID:1o9WExv+.net]
>>761
実装済みの>>766に加えて自前クラスでもArrayAccessインターフェイスを実装すれば配列のように扱えるクラスを実装出来る



771 名前:デフォルトの名無しさん mailto:sega [2016/06/14(火) 10:25:21.42 ID:ekIyBZy6.net]
PHPStorm を優勝期限切れで使い続けてる人います?
バージョンアップできなくてつらくない?

772 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 11:58:51.69 ID:vpCPShaK.net]
ありがとうございます
ArrayObjectってあったんですね
探し方が足りなかったようです
やはり関数言語的な書き方をしようと思うと、生配列だと物足りなくなってきますね
ただArrayObjectも、関数言語的なメソッドは実装されてないようです
eachやmapやreduceなど
既にそういうの書いてる人はいるでしょうけど、
標準実装してほしいところです

773 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 12:23:57.32 ID:nAMCA7y/.net]
>>763
explode(',', $str)[1] については
いつまでも古いバージョンのPHPつかってんじゃねーよってことだが。

774 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 17:44:21.80 ID:vpCPShaK.net]
class ArrayObjectEx extends ArrayObject {

public function map($func){
foreach ($this as $key => $value){
$this[$key] = $func($value,$key);
}
return $this;
}

}

とりあえずmapを作ろうと上みたいな感じにしたのですが
インスタンスのmapを呼び出すとundefined functionと言われます
親クラスにないメソッドを追加することは出来ないのでしょうか?
だとしたらそんな制限は意味が不明すぎますが・・

775 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 19:05:12.07 ID:4d00OzM8.net]
検証すんのめんどくさいから全部コード乗っけてくれる?ハゲ

776 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 19:26:39.01 ID:E92ohJVI.net]
mapに何を渡したんですか?

777 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 21:39:45.32 ID:vpCPShaK.net]
失礼しました
あまりの非PHPっぽさに釣られて
$a.hoge();
みたいな書き方をしていました

778 名前:デフォルトの名無しさん mailto:sage [2016/06/14(火) 23:57:10.36 ID:sdXnBDtj.net]
>>770
あれ本当だ
いつの間にこうなった

779 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 00:30:10.47 ID:yBESscco.net]
>>775
5.4からだから既に4年以上前

780 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 01:15:30.82 ID:/9sc4puR.net]
explodeの戻り値がfalseだったら文字列でもfalseでもない null が返ってくることになるよな、それ
noticeも出る



781 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 02:58:03.10 ID:6YnDO2OY.net]
そうですね

782 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 09:56:12.92 ID:35n6X8km.net]
>>776
ずっとそれ出来ないもんだと思ってた...

783 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 10:18:18.00 ID:HJSiSv4s.net]
猿は勉強しないから知らなくても無理はない。気にすんな。

784 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 11:45:48.59 ID:DNtAqMfa.net]
わかった。 もう気にしない。

785 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 12:28:52.64 ID:63gxNX9v.net]
マイナーバージョンアップで使えるようになった書き方は互換性の面で正直使いづらいな。
使いやすくなることは喜ばしいが。

786 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 14:10:09.61 ID:i5XubNZf.net]
自分の書いたコードが
PHPのどのバージョンから使えるコードなのかを判定する
ツール的なものはないのでしょうか?

787 名前:デフォルトの名無しさん mailto:sage [2016/06/15(水) 14:13:56.64 ID:x+vvrMaZ.net]
言い出しっぺが作るのです

788 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 03:33:03.54 ID:F+lw57im.net]
readdirでディレクトリエントリを読んでいきながら
便宜ファイルを削除しても問題ないのでしょうか?

789 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 11:12:05.38 ID:F+lw57im.net]
stackoverflow.com/questions/13507721/how-to-delete-a-file-from-folder-in-php

ここを見ると問題ないようです
foreachで元の配列を破壊的に変化させてるようなものだと思うのですが
どういうアルゴリズムなのか。
一旦全てエントリを舐めて、一つ一つ取り出してるだけなのでしょうか
scandirではなくreaddirを使うのはメモリを節約したいという意識からですが
一度に全部読んで単に取り出しを一つ一つしているだけなら
あんまり意味がないですね

790 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 11:51:44.03 ID:OOtzbp5n.net]
>>785
問題が出るかは確認してないけど、
問題が出るかもしれないから readdir のループでは対象ファイルのリストアップだけして、改めて処理用のループ回してる。



791 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:13:15.23 ID:rO3o63UR.net]
配列の操作について質問です。
MySQLから点数データを取得してwhile文で配列に格納するとともに、
点数の5段階の相対評価を得たいです。

学生(要素数が可変)の点数配列scoresがあるとした場合、点数の高い順に
最初の1/5をA、次の1/5をB、次の1/5をC、次の1/5をD、残りをEに分類するには
どういう操作をするのが定石でしょうか?

792 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:14:35.80 ID:rO3o63UR.net]
(続き)
やりたいことは点数出力時に、「相対的」に5段階評価してランク付けも出力したいのです。
絶対評価なら80点以上はA、60点以上はB・・・など基本的なif文の分岐で可能ですが、
相対評価の場合に、定石的な方法や、便利な関数などはあるのでしょうか?

いったん点数を配列に格納後に、配列をコピーしてソートして5つに分類するとか考えているのですが、
もっといいアルゴリズムや便利な関数などありますか?
よろしくお願いします。

配列の中身(MySQLからwhile文で取得)
scores[1] = 19;
scores[2] = 82;
scores[3] = 37;
...
scores[488] = 11;
scores[489] = 55;

793 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:20:11.03 ID:lOAG9aOi.net]
>>788
ここはphpの下質スレですがご質問はphpに関する質問ですか?

794 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:25:56.10 ID:rO3o63UR.net]
>>790
はい。
PHPでのアルゴリズムの実装方法やそのためのPHPの関数などを教えて欲しいです。

795 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:32:21.65 ID:F+lw57im.net]
>>787
それが安心ですね
ありがとうございます

796 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 15:40:54.97 ID:lOAG9aOi.net]
>>791
まあ…ほんとにphpなら
単純に1次元配列を並び替えるだけならrsort($scores);するかその前にsqlの時点でORDER BYすればいい
あとは$scores = array_chunk( $scores, (int)(ceil(count($scores)/5)) );とかすればいい
データが二次元だとか細かい処理したいとかならrsort()ではなくusort()も使える

797 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 16:28:58.79 ID:rO3o63UR.net]
>>793
ありがとうございます。
配列操作の関数がたくさんあってどれが最適なのか見つけられずにいました。
ORDER BYとご教示頂きましたarray_chunkの関数の組み合わせが最適そうですね。
解決できそうです。ありがとうございました。

798 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 16:49:55.80 ID:BCCkDo9p.net]
学生数が5できっちり割れる時は良いけど
そうならない時はどうするのかな?

799 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 17:36:01.49 ID:rO3o63UR.net]
>>795
ご注意ありがとうございます。
array_chunk には、次の記述がありますが、仕様上問題ないです。
「最後の部分の要素数は size より小さくなることもあります」
php.net/manual/ja/function.array-chunk.php

800 名前:デフォルトの名無しさん [2016/06/16(木) 21:36:32.86 ID:geCt37Iz.net]
質問させていただきます。
Class内でメンバ関数で定義した変数を別のメンバ関数から参照するにはどうすれば良いのでしょうか?



801 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 22:26:42.88 ID:S7gZdFkC.net]
>>797
何がしたいか分からんからやりたいことのコード例

802 名前:デフォルトの名無しさん [2016/06/16(木) 22:30:00.80 ID:geCt37Iz.net]
>>798
あ、ごめんなさい
class {
public function a() {
$x = 'hello,world';
}

public function b() {
print $x; //hello,worldを表示する
}

}

簡潔にかけばこんな感じです。
aメソッドで定義した変数をbでも使いたいです

803 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:17:55.32 ID:S7gZdFkC.net]
>>799
クラスのプロパティにしたらあかんのか?

804 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:23:33.51 ID:OOtzbp5n.net]
クラス内の特定の機能だけでしか使わない変数の扱いについては悩ましいこともあるな。
スコープを厳格にしたいならその機能を別のクラスとして切り出すか、そこまで小分けしたくないなら大人しくプロパティにしてしまうか。
JAVAなんかだとクラス内クラスが簡単に扱えてこういうのに便利なんだけど、PHPってどうなんだっけ。

805 名前:デフォルトの名無しさん [2016/06/16(木) 23:23:34.81 ID:geCt37Iz.net]
>>800
まあそれでもいいっちゃいいんですけど
ちょっとコードが長くなった時とか、別々にして処理させたいんですよね
皆さんがクラス書くときってどうやってるんでしょうか

806 名前:デフォルトの名無しさん mailto:sage [2016/06/16(木) 23:30:35.19 ID:S7gZdFkC.net]
>>802
そもそも担当処理が違うなら別クラスにして委譲するのが適切だとは思う

807 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 00:04:23.57 ID:OWOb/yaE.net]
public function a() {
  static $x = 'hello,world';
}
これでは要求を満たさないならばおとなしく関数ではなくclassの変数やclass定数にすべき

808 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 01:04:47.60 ID:bXZXch1T.net]
>>804
質問を読んでなんでそんなコードが出てくるのか意味解らん

809 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 01:24:40.23 ID:VvmzJV5D.net]
配列から数をキーとして持つ要素だけを取り出す
いい方法はありませんか?

810 名前:デフォルトの名無しさん [2016/06/17(金) 02:24:59.62 ID:Ub5TQFWS.net]
PHPの本で分かりやすいのある?



811 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 07:28:42.66 ID:yged7CRH.net]
>>807
皆さんはどんなosでどんなツールでphpやっているの?
教えて

812 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 07:38:35.18 ID:kypwTnD/.net]
机の上でノートに鉛筆でコードを書きながら脳内デバッグして脳内リリース。

813 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 07:55:00.51 ID:zTp2v+lf.net]
>>809
奇遇ですな。

同じくアイデア段階では、パソコンでやらずに紙です。
すぐにフローやイメージ図を書き留められる。放射状に広げていける。
紙とエンピツがその時だけ本当に便利だよね。

814 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 08:36:09.46 ID:CYdk5Mt/.net]
シーケンス図は手書きの方が楽、人に見せるときは格好つけてVisioで整形するがな

815 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 10:05:23.41 ID:izLNj4Mm.net]
>>807
山田祥寛(よしひろ)、翔泳社
10日でおぼえる PHP 入門教室、第4版、2012

この本は、Webアプリ作成の流れがわかるけど、
文法の説明は、あまりない

816 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 10:10:12.64 ID:zTp2v+lf.net]
>>812
その人の本地雷だろ。
初心者の時にPEARの本買ったら、意味がわからなくなって挫折しかかった。
別の本で救済された。文法云々の前にとにかく、理屈をこねすぎて本質部分全然わかりにくい。

817 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 10:56:59.01 ID:izLNj4Mm.net]
山田祥寛は第一人者。
様々な言語の本を書いている。RoRでも有名

講習会も1日4万円!

818 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 11:50:18.31 ID:1vjuVThu.net]
>>806
array_filter() で ARRAY_FILTER_USE_KEY フラグを使ってフィルタリングする。
あるいは、foreach で順に走査して該当するものだけ取得する。

819 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 13:12:30.73 ID:VvmzJV5D.net]
>>815
ARRAY_FILTER_USE_KEYというのは初耳でしたが、
借りたVPSに入ってるのは5.4なので、まだ使えませんでした
おとなしくforeachします
ありがとうございました

820 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 16:07:38.77 ID:AeewtahV.net]
ユーザーアイコンの取得方法について質問です。

現在ユーザーアイコンの保存にてaws s3(フレームはlaravel)を利用しています。
疑問なのはアイコンの存在チェックをするべきかどうかです。
(アイコン名はユーザーのid名です)

以下のようにすると、存在チェックと取得の計2回のリクエストが発生してしまいます。
@if (Storage::exists('user-icons/' . $user->id . '.jpg'))
<img src=&quo



821 名前:t;{{ Storage::url('user-icons/' . $user->id . '.jpg') }}">
@else
<img src="{{ Storage::url('user-icons/default.jpg') }}">
@endif

そのため単純にユーザーが会員登録した時点でデフォルト画像をユーザーアイコンとして保存し
以下のようにただ取得するというシステムにしようか迷っています。
<img src="{{ Storage::url('user-icons/' . $user->id . '.jpg') }}">
(アイコンを変えないかぎり、ストレージ上ではデフォルト画像があふれるような感じ)

アイコンを設定するようなサービスは、どのような構造になっているのでしょう?
[]
[ここ壊れてます]

822 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 16:09:49.84 ID:KYjoOhmA.net]
>>817
データベースは使わないの?

823 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 16:40:23.10 ID:AeewtahV.net]
>>818
アイコン変更履歴を格納するという意味でしょうか?

824 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 16:56:34.53 ID:KYjoOhmA.net]
>>819
履歴が必要なら履歴も登録してもいいけど。
例えば、user.iconに画像ファイル名が入ってるなら、
select cese when user.icon is null then 'default.jpg' else user.icon end as user_icon
画像ファイル名じゃなくて、あり/なしでもいいし、フルパスにしてもいいし、
userとは別テーブルにしてもいいし。

825 名前:デフォルトの名無しさん mailto:sage [2016/06/17(金) 16:58:19.35 ID:KYjoOhmA.net]
っていうか、
> 以下のようにすると、存在チェックと取得の計2回のリクエストが発生してしまいます。
これほんと?
$user->idってインスタンスのプロパティアクセスじゃないの?

826 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 00:14:26.11 ID:SEe9xJ4I.net]
>>817
ファイルを保存したことが確定していればそれでいいというのであればそのステータスをローカルのDBなんかに保存する
アクセス時点でクライアントに画像が見えることを担保したいのであればクライアントサイドでやるべきではないか

827 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 00:48:21.29 ID:W3J+GEBP.net]
>>821
> これほんと?
しかまともなレスがない

828 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 03:06:39.83 ID:zkudPs4r.net]
>>823
つかそいつ一人しかレス付けてないじゃん。

>>817
S3 は高性能なストレージで存在チェック程度のアクセスは気にするような話ではないんじゃない?
ただアイコンを表示する全ての個所でそのコードを書くのはだるいから、デフォルトアイコンを作ってしまうというのもアリだと思う。
ただそうすると、例えばアイコンを設定してないユーザー 10人を一覧表示する場合、
存在チェック式なら同一の画像URL 10個が並ぶからクライアントは結果的に 1回の画像取得しかしないのに対し、
デフォルトアイコンコピー式では画像は個別の 10 の URL になるからクライアントは 10回画像取得をすることになり、
存在チェックなどの些細な負荷より重い実際の画像アクセスが増えてしまう。

829 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 08:33:50.00 ID:8GpUPXrh.net]
>>817
ファイルリストをキャッシュしておいて
ファイルが変更された(画像ファイルの追加や削除)タイミングで
キャッシュをInvalidateすればいいんでないかい?

830 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 08:42:32.00 ID:saT7WdS7.net]
default.jpgくらいは手元(ローカルサーバー)に置いておきたいというのはあるわな
その場合はlocal://default.jpgとかs3-icon://xxxx.yyyみたいな独自書式を用意するかな



831 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 13:57:43.89 ID:a+CHws3P.net]
formと振り分けphpについて質問です。

<form action="furiwake.php">
<input type=submit>
<input type=submit>
<input type=submit>
</form>

で、furiwake.phpで$_POSTの内容判定してheader['Location']するのと

<form><input type="submit"></form>
を何個も書いてそれぞれ別のページに飛ばすのってどっちが良いんですか?
ただの趣味の話?
それともこうした方が良いとかってありますか?

832 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 14:07:09.69 ID:a+CHws3P.net]
書き忘れ
顧客情報データ持っててhiddenで渡して次画面行きたいだけなのですが
1.全部$_SESSIONに詰め込んで<a href>を何個も作ってそれぞれに飛ばす
2.一つの<form>にsubmitを入れまくって振り分け用phpにhiddenで飛ばす
3.<form>を複数作って顧客情報をそれぞれhiddenで飛ばす

$_SESSIONに何でもかんでも詰め込んで良いものか、
それとも振り分け用phpへのアクセスが増える(現実問題は大した事ないけど作り方として)のを避けた方が良いのか
というようなことで迷いました。

833 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 16:03:58.68 ID:ue516XaJ.net]
端的に言うと、どれもやらねぇかな。

834 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 16:51:59.61 ID:OFAUAFhz.net]
>>827
目的と手段を考えれば答えがでるんじゃない。
データを持って次画面行きたいだけなら$_SESSIONを使うかな。
むしろPOSTする意味がわからない。

835 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 19:19:52.96 ID:a+CHws3P.net]
>>829
どんな方法使うんですか?

>>830
取り敢えず$_SESSIONに詰め込む事にします

836 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 20:16:44.01 ID:CHIXqkwm.net]
何を参考にしたのか知らないが、普通はそんなやり方はしない

837 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 20:41:31.45 ID:a+CHws3P.net]
普通はどうするんでしょうか

838 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 20:55:18.11 ID:CHIXqkwm.net]
普通は、一つのformに一つのsubmit
処理内容を分けたいなら、
処理の選択をするエレメントを付けてやる

839 名前:デフォルトの名無しさん mailto:sage [2016/06/18(土) 22:59:24.24 ID:pgLfn0h3.net]
>>833
自分がしたい処理に似ている有名なサイトのページを分析してみればいい

840 名前:デフォルトの名無しさん mailto:sage [2016/06/19(日) 18:04:14.78 ID:JfyAxJGc.net]
nanoappli.com/blog/archives/5448

こちらのサイトで
simpleXMLでXMLを組み立てた後
整形するためにDOMDocumentで出力しなおしていますが
最初からDOMDocumentでXMLを組み立てることは出来ないのでしょうか?



841 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 02:38:27.16 ID:tnqQkYkd.net]
$xml = simplexml_load_string($str);
json_decode(json_encode($xml), true);

で得られる形式の配列から
xmlに戻す、いい方法はありせんか?

842 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 06:31:07.37 ID:gb8WC3Pe.net]
foreachで頑張る

843 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 07:10:53.68 ID:6mpJGPIZ.net]
php同士ならserialize/unserializeでいいだろ
xmlとかyamlはまああれだ、趣味

844 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 12:29:12.56 ID:tnqQkYkd.net]
RSSを配列化→加工→RSSに戻す
ということをしたいのです
しかしPHPのXML周りはどうもイケてない気がします
簡単なことをするのも煩瑣で、少し突っ込んだ操作も不可能で・・
foreachで頑張るしかないのでしょうか

845 名前:デフォルトの名無しさん [2016/06/20(月) 13:06:06.35 ID:e7qwC/Xx.net]
>>840
Rubyでも使いなさい

846 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 13:56:49.12 ID:CH6czl6r.net]
Rubyを使ったところで向こうのコミュニティに迷惑掛けるだけだろう
どの言語でも共通のDOMすら理解できてないんだから

847 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 14:30:03.12 ID:ppvG3ddJ.net]
Groovy なら、クロージャを使って、簡潔に書ける

タグ名.each{ 要素 ->
要素.value = 'abc'
}

848 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 15:02:05.88 ID:tnqQkYkd.net]
別にPHPが駄目だといっている訳ではありません
実用主義のPHPなのに
XMLと配列との相互変換のための関数が用意されていないのっておかしくね?
と言っているのです
あと値を設定した時に実体参照に変換してくれないところも気が利いてません

849 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 15:30:57.32 ID:tnqQkYkd.net]
>>837
あと良く使われてるこの手法もネームスペース属性がそぎ落とされますし・・
イケてないと言わざるを得ません

850 名前:デフォルトの名無しさん [2016/06/20(月) 15:37:59.20 ID:dCVNOi3X.net]
黙れ!小童!!!!!
chattykh.com/wp



851 名前:-content/uploads/2016/03/CZezN7LVIAApejO.jpg []
[ここ壊れてます]

852 名前:デフォルトの名無しさん mailto:sage [2016/06/20(月) 15:43:22.49 ID:CH6czl6r.net]
>>844,845
配列に型変換して一体何が楽になると思ってるのか知らんけど
DOMが嫌だという人のために配列っぽく扱えるSimpleXMLElementが用意されてるだろ
ドキュメントも読まずに自分勝手にarray使っておいて気が利かないとか
マとして恥ずかしくないの?






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<272KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef