我想在perl中寫一些設置$的函數!類似於內置的perl函數。當我嘗試這樣做時,它抱怨'參數'無法創建管理員用戶「在標量分配中不是數字」。我已經嘗試使用谷歌搜索這個,但不幸的是谷歌不會看$!所以結果很難得到。
if(!createUser('admin')) { print $!; }
sub createUser
{
my ($user) = @_;
if($user eq "admin")
{
$! = "Cannot create admin user";
return 0;
}
#create user here
return 1;
}
PS。我知道Try :: Tiny等,但我想保持與腳本的其餘部分的一致性,如果我切換到try/catch,我想移動整個腳本,但我還沒準備好做。
我不認爲你可以這樣做。你爲什麼想要? – squiguy 2013-03-07 23:24:39
如果您想要返回非系統消息,請在模塊名稱空間中使用$ @或全局(例如'$ DBI :: errstr')。 – ikegami 2013-03-08 01:11:43
@squiguy爲了保持一致性,我只想編寫類似於perl函數的代碼。我猜如果perl本身不一致,我就很難編寫一致的代碼:-)看起來有些函數死了,其他函數返回$ !,有些返回$ @,而另外一些則有一個特殊的變量。 – MikeKulls 2013-03-08 06:08:07