比如:
在 PHP 中用 $ 来定义一个变量 $a = 1
在 Perl 中$ 开头的变量只能保存标量,比如 $a = 111。
在 Ruby 中 $ 开头的变量除了几个特殊的外,都是全局变量,如 $a = 1 。
在 C# 中$ 用来开启字符串内插模式,例如 $"Hi, {name}"
如果帮助到你,求采纳~
require 'mysql'class MysqlDb
# attr_accessor :host, :user, :pass, :database
def open(host=nil, user=nil, pass=nil, database=nil,port=3306)
@host =host
@user = user
@pass = pass
@database = database
@port = port
begin
@connection = Mysql.new(@host, @user, @pass, @database, @port)
rescue
puts "connect faild! an error has occurred: #{$!}" # 错误信息保存在特殊变量$!中。
try_again
end
end
def try_again
puts '------------------try again, if not modify, leave a blank---------------'
print "host: "
host=STDIN.gets.strip
@host = check_value(host,@host)
puts "---------------current host: #{@host}"
print "user: "
user =STDIN.gets.strip
@user = check_value(user,@user)
puts "---------------current user: #{@user}"
print "password: "
pass =STDIN.gets.strip
@pass = check_value(pass,@pass)
puts "---------------current password: #{@pass}"
print "database: "
database =STDIN.gets.strip
@database = check_value(database,@database)
puts "---------------current database: #{@database}"
print "port: "
port =STDIN.gets.strip
@port = check_value(port,@port)
open(@host, @user, @pass, @database, @port)
puts "---------------current port: #{@port}"
end
def check_value(value,returnvalue)
if value == ""
nil
else
returnvalue = value
end
return returnvalue
end
def iquery(sql)
field = []
@connection.query(sql).each do |data|
field <<data
end
field.to_a
end
def iexecute(sql)
@connection.query(sql)
end
def close
@connection.close
end
end
# useages
adb = MysqlDb.new
adb.open('127.0.0.1','root','zyq001122','hello_z','3307')
# result = db.query "insert into user value(7,\"lilY\",\"256y42\",\"#{Time.now.strftime("%Y-%m-%d %H:%M:%S")}\" )" # 插入记录
# result.each {|row| puts row}
num_of_records = adb.iquery ('select count(*) from user') #查询
puts num_of_records
#sql = "insert into user value(10,\"Hello-Kitty\",\"256y42\",\"#{Time.now.strftime("%Y-%m-%d %H:%M:%S")}\" )"# 数据操作
# sql = 'update user set name=\'jackjhons\' where uid=5 ' # 更新一条记录
#adb.iexecute(sql)
# adb.close
Ruby,一种简单快捷的面向对象(面向对象程序设计)脚本语言,在20世纪90年代由日本人松本行弘(Yukihiro Matsumoto)开发,遵守GPL协议和Ruby License。
Ruby的变量有一定的规则,以$开头的一定是全局变量,以@开头的都是实例变量,而以@@开头的是类变量。
常数则以大写字母开头这种方法,对文本编辑器的命令补全很有帮助,如在vim下先键入$及开头字母,再敲击Ctrl+p,则可专门补全本文件以及关联文件中的全局变量,perl与php亦有此优点。
已经定义的类可以在运行时修改
Ruby是动态语言,你可以在程序中修改先前定义过的类。 也可以在某个类的实例中定义该实例特有的方法,这叫做单例方法。
使用Ruby可以写出简短而又功能强大的代码
下面的方法用来完成两个矩阵的乘积
注:ruby标准库中已包含矩阵库 Matrix