PHP:如何用较少的代码实现如下需求呢?
A-AA
B-BB
C-CC
D-DD
E-EE
F-FF
G-GG
H-HH
I-II
J-JJ
转换成如下形式:
A-AA-[随机从其他不重复的4行中抽取叠加的字母]
比如:
A-AA-[CC HH II DD]
B-BB-[CC II EE FF]
回复内容:
A-AA
B-BB
C-CC
D-DD
E-EE
F-FF
G-GG
H-HH
I-II
J-JJ
转换成如下形式:
A-AA-[随机从其他不重复的4行中抽取叠加的字母]
比如:
A-AA-[CC HH II DD]
B-BB-[CC II EE FF]
$randStr = []; for (array_rand($data, 4) => $k as $v) { //... $randStr[] = substr($data[$k], -2); } echo 'A-AA-[' . implode(' ', $randStr) . ']';\
<code>$array = array('A-AA','B-BB','C-CC','D-DD','E-EE','F-FF','G-GG','H-HH','I-II','J-JJ'); function transform(&$value,$key,$array) { $array_temp = $array;//复制一个数组 unset( $array_temp[$key] );//移除这个key的元素 $rand_keys = array_rand($array_temp,4);//抽出4个元素 shuffle($rand_keys);//打乱顺序 $result_str = []; foreach ($rand_keys as $k) { $result_str[] = substr($array_temp[$k], -2);//获取重叠字符 } $others_str = implode(' ',$result_str); //空格分隔四个随机元素组成字符串 $value = sprintf("%s-[%s]",$value,$others_str);//整理输出字符串 } array_walk($array,"transform",$array); print_r($array); </code>
由 woody 方案改编。
$data = array( 'A-AA', 'B-BB', 'C-CC', 'D-DD', 'E-EE', 'F-FF', 'G-GG', 'H-HH', 'I-II', 'J-JJ', ); $randStr = ''; $randArr = array_rand($data, 5); shuffle($randArr); // 打乱数组,防止开头的那个随机不到 G H I J. foreach ( $randArr as $k => $v ) { $randStr .= $k == 0 ? $data[$v] . '-[' : substr($data[$v], -2) . ' '; } echo rtrim($randStr) . ']';
不错,学习了@!

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











PHP 8.4 では、いくつかの新機能、セキュリティの改善、パフォーマンスの改善が行われ、かなりの量の機能の非推奨と削除が行われています。 このガイドでは、Ubuntu、Debian、またはその派生版に PHP 8.4 をインストールする方法、または PHP 8.4 にアップグレードする方法について説明します。

ファイルのアップロードを行うには、フォーム ヘルパーを使用します。ここではファイルアップロードの例を示します。

CakePHP は、PHP 用のオープンソース フレームワークです。これは、アプリケーションの開発、展開、保守をより簡単にすることを目的としています。 CakePHP は、強力かつ理解しやすい MVC のようなアーキテクチャに基づいています。モデル、ビュー、コントローラー

CakePHP でデータベースを操作するのは非常に簡単です。この章では、CRUD (作成、読み取り、更新、削除) 操作について理解します。
