簡體   English   中英

如何隨機回顯字符串的一部分?

[英]How to echo randomly a portion of a string?

我已經通過翻譯函數__();成功翻譯了一些引號__(); 現在我只想隨意回聲其中的一句話 該字符串中的所有引號均以特殊字符(例如|分隔。

Sofar我只有這個。 在解決我的隨機回聲之后,應該使用什么代碼?

$quotes =
__("IF YOU MAKE EVERYTHING BOLD, NOTHING IS BOLD") . "|" .
__("Quality of design is an indicator of credibility") . "|" .
__("People ignore design, that ignores people");

(一個重要的限制:必須使用__("");精確地將引號引起來");以便可以對其進行檢查和翻譯。) __($variable)不適用於我購買的當前清理腳本,因此這些將無法正常工作。

您已經在每個引號上分別調用__() ,為什么不保存所有額外的翻譯並執行類似的操作:

$quotes = array('quote1', 'quote2', 'quote3');
$index = array_rand($quotes);
echo __($quotes[$index]);

編輯:為了滿足您的其他要求,對__()的調用必須立即包圍每個字符串,您可以這樣做:

$quotes = array(__('quote1'), __('quote2'), __('quote3'));
$index = array_rand($quotes);
echo $quotes[$index];

此處最大的缺點是,盡管只打印了一個字符串,但您現在正在為該數組中的每個字符串查找翻譯,但這與您在“一個大字符串”解決方案中的情況相同。

為什么餅干全都在一個字符串中,而不是一個數組中? 如果是這種情況,您的問題將立即得到解決。 站在看台上| 然后將其隨機索引到創建的數組中以選擇隨機報價。

為什么不將它們保留在數組中,只翻譯實際輸出的內容?

$quotes = array(
    "IF YOU MAKE EVERYTHING BOLD, NOTHING IS BOLD",
    "Quality of design is an indicator of credibility",
    "People ignore design, that ignores people",
);
$randomQuote = $quotes[ rand(0, count($quotes)-1)];
echo __($randomQuote);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM