PHP ちょっとしたメモ 関数値の転送詳細の分析 PHP 関数の戻り値 PHP 配列 PHP 日付関数

WBOY
リリース: 2016-07-29 08:52:04
オリジナル
1150 人が閲覧しました

1. PHP 関数がパラメータを渡す方法は、変数のアドレスを渡すか、変数の値を渡すかです。

class Penson {

public $age;

}

// オブジェクトをインスタンス化します

$zs=new Penson();

$zs->age=10;

1.2 文字列、数値、配列をそれぞれ定義します

$str= string";

$num="0";

$myArray=(10,100,100);

1.3 関数を定義する

function test($str,$num,$arr,$obj){

$str= "文字列を変更 ";

$num=100;

$arr[0]=0;

$obj->age="100";

}

test($str,$num,$arr ,$zs );

関数の実行後にそれぞれ出力します:

echo $str; // 0

echo $arr[0] // 10

echo $zs; ; // 100

結論: 文字、数値、配列をパラメーターの形式で関数に渡すと、値がコピーされて関数に渡されますが、オブジェクトはオブジェクトを指すアドレスを関数に渡します。実行すると、現在の関数はメモリ内のスタックが再利用されるため、作成された変数も破棄されるため、外部変数には影響しませんが、実際に関数内で変更されるのはオブジェクトです。渡されたアドレスを介してオブジェクトに直接アクセスすることはできません。そのため、関数内で変更されたオブジェクトの影響は、関数の実行後も残ります。

もちろん、他のタイプのデータをオブジェクトのようにしたい場合は、関数に渡されるのはアドレスであり、外部変数は関数内で変更されます。これは、パラメーターさえあれば、PHP でも行うことができます。は次のように渡されます:

test(&$str,&$num,&$arr,$zs);

変数の前に & 記号を追加して、データ型に関係なく関数内で変更できるようにします。関数の外の変数に影響します。

2.mysqli_insert_id($con)

挿入後、データベース内の現在の挿入データの自動生成された ID を知る必要がある場合があります。このとき、このメソッドは 1 つのパラメーターを使用します。このパラメータ 挿入の実行に使用されるデータベース接続では、返されたコンテンツが追加されていない場合は警告が表示されますが、挿入は成功します。

3. PHP に存在しない変数を取得しようとすると、$_POST["select"] のようなエラーが報告されることがあります。select が存在しない場合は、エラーが報告されます。 isset() メソッドを使用して変数が存在するかどうかを確認してから、

4. mysql でテーブルを作成するときは、必ずエンコーディングを設定してください:

CREATE TABLE message(

id int(10) auto_increment PRIMARY KEY NOT NULL,

ユーザー名 VARCHAR( 16) NOT NULL,

メッセージ VARCHAR(32) NOT NULL,

CREATE TABLE message(

id int(10) auto_increment PRIMARY KEY NOT NULL,

username VARCHAR(16) NOT NULL,

message VARCHAR(32) NOT NULL,

time datetime NOT NULL )

//下面这句是用来设置编码的,如果不设置可能会导致中文乱码在数据库中

ENGINE= MYISAM CHARACTER SET utf8 ;time datetime NOT NULL )


//次の文はエンコードを設定するために使用されます。設定されていない場合、中国語で文字化けが発生する可能性があります。データベース

ENGINE= MYISAM CHARACTER SET utf8 ;

🎜 上記では、PHP と関数の内容を含め、関数値の転送の詳細な分析を PHP ショート ノートで紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。 🎜 🎜 🎜
関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート