質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

91.37%

  • PHP

    15136questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

PHPで配列を作るのに中身を外出しテキストファイルにしたいです。

解決済

回答 2

投稿 2017/11/26 18:17

  • 評価
  • クリップ 0
  • VIEW 82

taro_nii_chan

score 157

設定ファイルurl.txttxtと言いつつphpを意識しています)を用意して、

$array_url = array(
    include("url.txt");
);


とやろうとして思い通りにならず納得しています。
ちょっと無理矢理感ありありですよね。
そこを何とか思い通りにする方法はありますでしょうか?

ユーザには下のurl.txtをいじっていいよと渡したいのですが。

/*
 * url.txtの使い方
 */

// コメントは「//」もしくは「/* */」が使えます
// 例えばこんな感じです。
/* これも使えます。 */

// URLはダブルコーテーションで括り、行末にカンマを付けて下さい。

// アーチスト系
"https://www.nikkei.com/",
"http://www.nhk.or.jp/",
"https://www.yahoo.co.jp/",
"http://gendai.ismedia.jp/articles/-/51603",
"https://ameblo.jp/yumiko-shaku/",
"http://saltmoderate.com/",
"https://nondesu.jp/",

// 企業系
"https://www.marubeni.co.jp/",
"http://www.brother.co.jp/",
"http://www.suzuki.co.jp/",
"http://www.kuronekoyamato.co.jp/",
"http://www.asahi-life.co.jp/",
"https://www.chuden.co.jp/",
"http://www.nichigas.co.jp/",
"http://www.juki.co.jp/",
"http://www.tepco.co.jp/",
"http://www.omron.co.jp/",
"http://www.tohoku-epco.co.jp/",
"https://www.amano.co.jp/",
"https://info.cookpad.com/",    
  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

回答 2

checkベストアンサー

+1

以下をincludeするようにすればよいのでは?

// 以下の行は変更しないでください
$array_url = array(
// 以下の行を追記・修正してください
    "https://www.nikkei.com/",
    "http://www.nhk.or.jp/",
    "https://www.yahoo.co.jp/",
    // 省略
// 以下は修正しないで下さい
);

投稿 2017/11/26 18:32

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/11/26 20:15

    なるほど。
    今回はあまり低レベルのユーザを対象としていないので、
    「変更しないで下さい」にビビったりもしないと思います。
    これで行こうかと思います。
    ありがとうございました。

    キャンセル

  • 2017/11/26 20:40

    ユーザが触るファイルみたいだし、流石にまずくないですか?

    キャンセル

  • 2017/11/26 20:43

    PHPスクリプトと同じディレクトリを操作できる権限があるのであれば、細かいところを変えても、脅威はあまり変わらないと思います。「ユーザ」をどの程度信頼できるかによって変わりますね。

    キャンセル

  • 2017/11/26 20:52

    ユーザは信頼できないってスタンスなんで、マイナス評価は取り消しませんが、理解できました。
    コメントありがとうございます。

    キャンセル

  • 2017/11/26 21:15 編集

    ユーザとはこのスクリプトを利用する人、すなわちサイト運営者なのではないかと思いました。その前提が違っていたら、とんでもなく危険ですが、「ユーザには下のurl.txtをいじっていいよと渡したいのですが」とある「渡した」とは、スクリプトを渡したという意味だと思いますので、渡される側はサイト運営者だと解釈しました

    キャンセル

+1

1行1URLの設定用ファイルをfopenで開いて読み込み、解釈すればよいように思います。
コメントの解釈もプログラム側で行う形です。

投稿 2017/11/26 18:26

編集 2017/11/26 18:28

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2017/11/26 20:19

    あのコメントの形式で行こうと思ったのは、
    僕が頑張らなくてもphpが勝手にやってくれるというズボラな考えからでした。
    なので/* */とか、どこから始まって、、、とか作り込むのもしんどいので今回は見送りさせていただこうと思います。

    もっとちゃんと頑張る時にこの回答を覚えておいて参考にさせていただこうと思います。
    ありがとうございました。

    キャンセル

  • 2017/11/26 20:26

    個人的な考えとして、任意のコードを実行できる設定ファイルを読み込むことを許容できませんでしたので、上記のような回答としました。
    ファイルを編集される方が信頼できるのであれば、よいのではないかと思います。

    キャンセル

  • 2017/11/26 21:05 編集

    このファイルをアップロードまたは更新する処理を入れないと、片手落ちになりそうですね。ディレクトリに書き込み権限があるのであれば、ここ頑張ってもやりたい放題なので。
    それか、別ディレクトリにして権限を分けるか。
    後者のほうが簡単そうですね。

    キャンセル

  • 2017/11/26 21:19

    データベースがあるなら、そちらに入れる形の方がよいかもしれません。

    スクリプトと設定ファイルを同じ場所に配置するという想定をしていなかったため、ディレクトリの権限については考慮していませんでした。
    "や,が1つ欠けるだけでも、うまく動作しなくなる設定ファイルというのは、あまりユーザーには優しくないですね。
    かえって対応工数が増えそうに感じます。

    キャンセル

15分調べてもわからないことは、teratailで質問しよう!

ただいまの回答率

91.37%

関連した質問

同じタグがついた質問を見る

  • PHP

    15136questions

    PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。