相关疑难解决方法(0)

在不使用循环的情况下将字符串分解为关联数组?

我有一个字符串1-350,9-390.99,...,我需要把它变成一个关联数组,如下所示:

 Array
    (
        [1] => 350
        [9] => 390.99
        ...........
    ).
Run Code Online (Sandbox Code Playgroud)

是否可以仅使用数组函数执行此操作,而无需循环?

php arrays

26
推荐指数
4
解决办法
5万
查看次数

用于解析名称值对的正则表达式

有人可以提供正则表达式来解析字符串中的名称/值对吗?这些对用逗号分隔,值可以用引号括起来.例如:

AssemblyName=foo.dll,ClassName="SomeClass",Parameters="Some,Parameters"
Run Code Online (Sandbox Code Playgroud)

regex

19
推荐指数
1
解决办法
3万
查看次数

PHP正则表达式提取键值逗号分隔

我想从一个字符串中提取一些字符串,其中KEYs与VALUE分开,冒号(:)和s由逗号(,)分隔.问题是VALUE可以包含逗号.举个例子:

category:information technology, computer,publisher:Elsevier (EV),subject:Ecology, Evolution, Behavior and Systematics
Run Code Online (Sandbox Code Playgroud)

在此示例中,必须提取的KEY包括:类别,发布者和主题.最终结果必须如下:

category = information technology, computer
publisher = Elsevier (EV)
subject = Ecology, Evolution, Behavior and Systematics
Run Code Online (Sandbox Code Playgroud)

我试着写一个递归的正则表达式,但它不起作用:

(category|publisher|subject):(.*?)(?:,(?R)|.?)
Run Code Online (Sandbox Code Playgroud)

有人可以帮助解决这个问题.谢谢.

php regex

4
推荐指数
1
解决办法
301
查看次数

循环遍历数组数据

我有电子邮件模板数据,我试图将它作为带有键和标签的关联数组.但是我不能制作正确的阵列.我的模板如下:

key_1:label1,key2:label2,...

我以这种方式从数据库中获取此文本:

$subject = explode(',', $subject);
  foreach($subject as $s)
  {
    $subjects[] = explode(':', $s);
  }
var_dump($subjects);
Run Code Online (Sandbox Code Playgroud)

我正在使用这种结构的数组:

array(2) {
  [0]=>
  array(2) {
    [0]=>
    string(12) "key1"
    [1]=>
    string(16) "label1"
  }
  [1]=>
  array(2) {
    [0]=>
    string(12) "key2"
    [1]=>
    string(12) "label2"
  }
}
Run Code Online (Sandbox Code Playgroud)

如何使用键创建数组 - > key1,key2和values - > label1,label2?谢谢!

php arrays associative

2
推荐指数
1
解决办法
27
查看次数

php爆炸数组中的元素

我怎么能爆炸数组中的每个元素?

Array
(
    [0] => countryId:2, productId:1, status:1, pId:18, xId:pdgje5566
)
Run Code Online (Sandbox Code Playgroud)

请看以下数组:

$searchfor = $xId;

header('Content-Type: text/plain');

$contents = file_get_contents($file);
$pattern = preg_quote($searchfor, '/');
$pattern = "/^.*$pattern.*\$/m";

// search, and store all matching occurences in $matches
if(preg_match_all($pattern, $contents, $matches)){

   print_r($matches[0]);
   //echo implode("\n", $matches[0]);

}
Run Code Online (Sandbox Code Playgroud)

请指教,谢谢.

php arrays explode

0
推荐指数
1
解决办法
2160
查看次数

标签 统计

php ×4

arrays ×3

regex ×2

associative ×1

explode ×1