Latest web development tutorials

ตัวแปร Perl

ข้อมูลตัวแปรจะถูกเก็บไว้ในหน่วยความจำตัวแปรที่ถูกสร้างขึ้นจะเปิดพื้นที่บนหน่วยความจำ

ล่ามจะถูกกำหนดตามประเภทของตัวแปรพื้นที่หน่วยความจำในหน่วยความจำเพื่อให้คุณสามารถกำหนดชนิดข้อมูลที่แตกต่างกันเช่นจำนวนเต็มจุดลอยสตริงและตัวแปรอื่น ๆ

ในบทก่อนหน้านี้เราได้มีการแนะนำ Perl สามชนิดข้อมูลพื้นฐาน: สเกลาอาร์เรย์ hashes

    $ เกลาเริ่มต้นที่ $ A $ b เป็นสองเกลา
  • @ อาร์เรย์เริ่มต้นเช่น @b @a เป็นสองอาร์เรย์
  • เริ่มต้นกัญชา%% a% B เป็นสอง hashes

Perl ตัวแปรสำหรับแต่ละประเภทของคำสั่งตั้งค่าพื้นที่อิสระดังนั้นประเภทที่แตกต่างกันของตัวแปรสามารถใช้ชื่อเดียวกันคุณจะได้ไม่ต้องกังวลเกี่ยวกับความขัดแย้ง ตัวอย่างเช่น $ foo และ @foo สองตัวแปรที่แตกต่างกัน


สร้างตัวแปร

ตัวแปรไม่จำเป็นต้องประกาศอย่างชัดเจนชนิดหลังจากการกำหนดตัวแปรล่ามจะถูกกำหนดโดยอัตโนมัติเพื่อให้ตรงกับประเภทของพื้นที่

ตัวแปรที่ใช้เครื่องหมายเท่ากับ (=) ที่จะกำหนด

เราสามารถใช้ใช้คำสั่งอย่างเคร่งครัดในการประกาศตัวแปรทั้งหมดจะต้องบังคับประเภทของโปรแกรม

ด้านซ้ายมือเป็นตัวแปรค่าที่เหมาะสมตัวอย่างดังต่อไปนี้:

$age = 25;             # 整型
$name = "w3big";      # 字符串
$salary = 1445.50;     # 浮点数

ดังกล่าวข้างต้นรหัส 25 "w3big" และ 1,445.50 ตามลำดับที่ได้รับมอบหมายไป$อายุชื่อ $ และ$ เงินเดือนตัวแปร

ต่อไปเราจะเห็นการใช้อาร์เรย์และ hashes


ตัวแปรเกลา

ข้อมูลเกลาเป็นหน่วยเดียว ข้อมูลสามารถจำนวนเต็มลอย, ตัวอักษร, สตริงย่อหน้าและอื่น ๆ ง่ายๆก็สามารถเป็นอะไรก็ได้ นี่เป็นโปรแกรมเกลาง่าย:

#!/usr/bin/perl

$age = 25;             # 整型
$name = "w3big";      # 字符串
$salary = 1445.50;     # 浮点数

print "Age = $age\n";
print "Name = $name\n";
print "Salary = $salary\n";

เอาท์พุทการทำงานของโปรแกรมข้างต้นเป็น:

Age = 25
Name = w3big
Salary = 1445.5

ตัวแปรอาร์เรย์

อาร์เรย์เป็นตัวแปรที่ใช้ในการจัดเก็บค่าสเกลาสั่งซื้อ

@ อาร์เรย์เริ่มต้น

เข้าถึงตัวแปรอาร์เรย์คุณสามารถใช้เครื่องหมายดอลลาร์ ($) + ชื่อตัวแปรและระบุดัชนีการเข้าถึงแสดงด้านล่าง:

#!/usr/bin/perl

@ages = (25, 30, 40);             
@names = ("google", "w3big", "taobao");

print "\$ages[0] = $ages[0]\n";
print "\$ages[1] = $ages[1]\n";
print "\$ages[2] = $ages[2]\n";
print "\$names[0] = $names[0]\n";
print "\$names[1] = $names[1]\n";
print "\$names[2] = $names[2]\n";

เอาท์พุทการทำงานของโปรแกรมข้างต้นเป็น:

$ages[0] = 25
$ages[1] = 30
$ages[2] = 40
$names[0] = google
$names[1] = w3big
$names[2] = taobao

ก่อนที่โปรแกรมที่เราใช้ตัวอักษรที่ $ มาร์คหลบหนี (\) เพื่อการส่งออกอักขระ $


ตัวแปรกัญชา

กัญชาเป็นคีย์ / คู่ค่า

เริ่มต้นกัญชา%

หากคุณต้องการที่จะเข้าถึงค่าแฮช, คุณสามารถใช้$ + {สำคัญ} รูปแบบการเยี่ยมชม:

#!/usr/bin/perl

%data = ('google', 45, 'w3big', 30, 'taobao', 40);

print "\$data{'google'} = $data{'google'}\n";
print "\$data{'w3big'} = $data{'w3big'}\n";
print "\$data{'taobao'} = $data{'taobao'}\n";

เอาท์พุทการทำงานของโปรแกรมข้างต้นเป็น:

$data{'google'} = 45
$data{'w3big'} = 30
$data{'taobao'} = 40

บริบทตัวแปร

ที่เรียกว่าบริบท: หมายถึงตำแหน่งที่แสดงออก

บริบทที่ถูกกำหนดโดยทางด้านซ้ายมือชนิดตัวแปรของเครื่องหมายเท่ากับด้านซ้ายเป็นสเกลาร์ก็เป็นบริบทเกลาเครื่องหมายเท่ากับด้านซ้ายคือรายการมันเป็นบริบทรายการ

Perl ล่ามขึ้นอยู่กับบริบทเพื่อกำหนดประเภทของตัวแปร ตัวอย่างมีดังนี้

#!/usr/bin/perl

@names = ('google', 'w3big', 'taobao');

@copy = @names;   # 复制数组
$size = @names;   # 数组赋值给标量,返回数组元素个数

print "名字为 : @copy\n";
print "名字数为 : $size\n";

เอาท์พุทการทำงานของโปรแกรมข้างต้นเป็น:

名字为 : google w3big taobao
名字数为 : 3

@names รหัสเป็นอาร์เรย์ก็ถูกนำไปใช้ในสองบริบทที่แตกต่าง สำเนาแรกมันไปยังอาร์เรย์อื่นมันจะออกผลลัพธ์องค์ประกอบทั้งหมดของอาร์เรย์ ที่สองจะได้รับมอบหมายให้อาร์เรย์เกลาซึ่งส่งกลับจำนวนขององค์ประกอบในอาร์เรย์

นี่คือความหลากหลายของบริบทที่แตกต่างกัน

เลขที่ บริบทและคำอธิบาย
1 เกลา -

มอบหมายให้ตัวแปรสเกลาร์ในบริบทที่เหมาะสมคอมพิวเตอร์เกลา

2 รายการ -

ได้รับมอบหมายให้อาร์เรย์หรือกัญชาในบริบทของการที่เหมาะสมของรายการคำนวณ

3 อิสตันบูล -

บริบทแบบบูลคือการแสดงออกที่เรียบง่ายประเมินเพื่อดูว่ามันเป็นจริงหรือเท็จ

4 เป็นโมฆะ -

ความสัมพันธ์นี้ไม่จำเป็นต้องกลับบริบทของสิ่งที่ค่าโดยทั่วไปไม่จำเป็นต้องมีค่าตอบแทน

5 การแก้ไข -

นี้เกิดขึ้นเฉพาะในบริบทของคำพูด