String
如何確保函式的字元串參數不為空?
假設我有一個需要兩個字元串參數的函式,
function data(string memory _firstname, string memory _lastname) public { buyer[msg.sender] = Buyer(_firstname, _lastname); }
現在,我想確保使用者沒有將兩個欄位中的任何一個都留空。我該怎麼做 ?
在此特定功能中,您可以使用以下驗證:
require(_firstname.length && _lastname.length, "There is empty string passed as parameter.");
這只是檢查字元串中是否至少有一個符號,如果您想驗證最大符號長度,則必須將其添加為條件。
require(bytes(_firstname).length >0, "First name cannot be left empty"); require(bytes(_lastname).length >0, "Last name cannot be left empty");
但是,我仍然想讓它成為一行程式碼!