1
我使用這個PHP庫如何調用來自用戶輸入的任何方法或屬性
<?php
// require the Faker autoloader
require_once '/path/to/Faker/src/autoload.php';
// use the factory to create a Faker\Generator instance
$faker = Faker\Factory::create();
$name=$_POST['name'];
switch ($name) {
case 'text':
echo $faker->text;
break;
case 'name':
echo $faker->name;
break;
case 'address':
echo $faker->address;
break;
default:
echo $faker->anything;
break;
}
?>
你可以看到叫「騙子」
我需要的任何方法或屬性使用switch語句。
有沒有更好的辦法做事?
<form action="index.php" method="post">
<input type="text" name="name" value="text" /><br><br>
<input type="submit" value="Run" />
</form>
我想要做的就是這樣的事情
<?php
$name=$_POST['name'];
echo $faker->$name;
//So if user type text
echo $faker->text ;
//or if user type "words($nb = 3, $asText = false)"
echo $faker->words($nb = 3, $asText = false);
?>
你所提出的建議你可以做怎麼過的一個參數('$ faker->字()'),你需要額外的邏輯,否則使用大括號:'echo $ faker - > {$ name};'如果'$ name'等於'address',那麼您將執行等效的'echo $ faker->地址;' – Rasclatt
「你需要額外的邏輯,否則使用大括號「。我如何額外登錄?請幫助,如果你有任何想法在你的腦海裏 – daulat
好吧,你說什麼,用戶會鍵入類似的東西,如「詞| {」nb「:」3「,」文本「:」假「},那麼你可以搜索'''使用'strpos()',然後''爆炸(')'使用'|'將字符串解析成第二個變量爲json,第一個爲支撐值。 – Rasclatt