スレッド表示 | フラット表示〕 全トピック 920 件中 391 番目 次≫ ≪前

関数のphp間利用と、セッションについて。

created: 2005-08-11 22:24 | modified: 2005-08-12 23:57 | reply: 3

[2458] 関数のphp間利用と、セッションについて。

user: まお | created: 2005-08-11 22:24
いつもお世話になっております。
現在、PHPでHPを作っているのですが、少々質問させて
頂きたいことがございまして、参りました。

1.異なるphpファイル間での関数の使用は可能?

 以前、$nameなどの変数やfunctionで定義された関数は、
PHP間をまたがって
使用できるというようなことを聞いたことがあります。
そこで、実際に自分で試したところできませんでした。
実際のところどうなんでしょうか?例えば、
<a.php>内に function henkan(){} を設定して、
<b.php>内から、このhenkan関数を呼び出すということです。

2.セッション変数は、print可能?
 <a.php>というコーディングの中に、
 'no'という名前のテキストボックスがあるとします。

 セッション変数を使用する場合、
session_start()、
session_register("S_no")、
$no = $_POST['no']、
$_SESSION['S_no'] = $no
session_destroy()

という流れでセッション変数にテキストボックスの中身を
格納しておりますが、この$_SESSION['S_no'] を
<b.php>でprintでみると、テキストボックスに入っている
文字列が入っていません。しかし、
isset($_SESSION['S_no'] ) とやってみると、
値が入っているものとみなされているみたいです。
ちなみにこの<b.php>では、session_register("S_no")
を記述しておりません。それが原因なのでしょうか?
セッションに値を入れる場合も、セッションから値を
引き出す場合も、ともにsession_register("S_no")が
必要となってくるのでしょうか?
reply: 2459 返信 編集 削除

[2459] Re.関数のphp間利用と、セッションについて。

user: まお | created: 2005-08-11 22:43
> 2.セッション変数は、print可能?
>  <a.php>というコーディングの中に、
>  'no'という名前のテキストボックスがあるとします。
>
>  セッション変数を使用する場合、
> session_start()、
> session_register("S_no")、
> $no = $_POST['no']、
> $_SESSION['S_no'] = $no
> session_destroy()
>
> という流れでセッション変数にテキストボックスの中身を
> 格納しておりますが、この$_SESSION['S_no'] を
> <b.php>でprintでみると、テキストボックスに入っている
> 文字列が入っていません。しかし、
> isset($_SESSION['S_no'] ) とやってみると、
> 値が入っているものとみなされているみたいです。
> ちなみにこの<b.php>では、session_register("S_no")
> を記述しておりません。それが原因なのでしょうか?
> セッションに値を入れる場合も、セッションから値を
> 引き出す場合も、ともにsession_register("S_no")が
> 必要となってくるのでしょうか?

申し訳ありません。これについては解決しました。
PHPの変数って、大文字小文字の区別があるのですね。
失礼しました。
Parent: 2458  reply: 2460 返信 編集 削除

[2460] 関数の共有

user: ゆうじ | created: 2005-08-11 22:52
まいどどうも。

1.異なるphpファイル間での関数の使用は可能?

a.php 内の関数 function henkan() を呼び出すためには
b.php にて a.php をインクルードする必要があります。
a.phpが関数の定義だけなら require_once が適切だと思います。
http://jp.php.net/manual/ja/function.require-once.php

a.php
<?php
function henkan()
{
//
}
?>

b.php
<?php
require_once('a.php');

//
henkan();

?>
Parent: 2459  reply: 2462 返信 編集 削除

[2462] 度々すみません。

user: まお | created: 2005-08-12 23:57
ゆうじさん、毎回質問に答えていただいて恐縮です。
異なるPHPファイル間で関数を共有できないとしたら、
いちいち同じような関数を作成しなくてはならないのかと
おもっていました。
これですっきりしました。
ありがとうございます。
Parent: 2460  返信 編集 削除
スレッド表示 | フラット表示〕 全トピック 920 件中 391 番目 次≫ ≪前
ページの一番上へ
Googleグックマークに登録 Yahooグックマークに登録 livedoorクリップに登録 @niftyクリップに登録 はてなブックマークに登録 deliciousに登録 Buzzurlに登録 FC2ブックマークに登録
最近更新された掲示板トピックス
管理人Blog
Yahoo Search

最近更新したNote
PHPマニュアル
今日のブックマーク
PHPマニュアル関数検索
関数名を入力し検索ボタンをクリック↑