1010namespace Toolkit \Stdlib \Str \Traits ;
1111
1212use Toolkit \Stdlib \Helper \DataHelper ;
13- use Toolkit \Stdlib \Str ;
1413use function array_map ;
1514use function array_values ;
1615use function count ;
@@ -136,6 +135,20 @@ public static function split2Array(string $str, string $delimiter = ',', int $li
136135 return self ::splitTrimFiltered ($ str , $ delimiter , $ limit );
137136 }
138137
138+ /**
139+ * Like explode, but will trim each item and filter empty item.
140+ *
141+ * @param string $str
142+ * @param string $delimiter
143+ * @param int $limit
144+ *
145+ * @return array
146+ */
147+ public static function toTrimFilteredArray (string $ str , string $ delimiter = ', ' , int $ limit = 0 ): array
148+ {
149+ return self ::splitTrimFiltered ($ str , $ delimiter , $ limit );
150+ }
151+
139152 /**
140153 * Like explode, but will trim each item and filter empty item.
141154 *
@@ -160,6 +173,20 @@ public static function splitTrimFiltered(string $str, string $delimiter = ',', i
160173 return array_values (array_filter (array_map ('trim ' , $ list ), 'strlen ' ));
161174 }
162175
176+ /**
177+ * Like explode, but will trim each item.
178+ *
179+ * @param string $str
180+ * @param string $delimiter
181+ * @param int $limit
182+ *
183+ * @return array
184+ */
185+ public static function toTrimmedArray (string $ str , string $ delimiter = ', ' , int $ limit = 0 ): array
186+ {
187+ return self ::splitTrimmed ($ str , $ delimiter , $ limit );
188+ }
189+
163190 /**
164191 * Like explode, but will trim each item.
165192 *
@@ -181,6 +208,28 @@ public static function splitTrimmed(string $str, string $delimiter = ',', int $l
181208 return array_map ('trim ' , $ list );
182209 }
183210
211+ /**
212+ * @param string $str
213+ * @param string $delimiter
214+ *
215+ * @return array
216+ */
217+ public static function toTypedArray (string $ str , string $ delimiter = ', ' ): array
218+ {
219+ return self ::splitTypedList ($ str , $ delimiter );
220+ }
221+
222+ /**
223+ * @param string $str
224+ * @param string $delimiter
225+ *
226+ * @return array
227+ */
228+ public static function toTypedList (string $ str , string $ delimiter = ', ' ): array
229+ {
230+ return self ::splitTypedList ($ str , $ delimiter );
231+ }
232+
184233 /**
185234 * @param string $str
186235 * @param string $delimiter
0 commit comments