|
|
|
| К примеру у меня есть массив:
array(2) {
title => Chelsea FootballFanCast 023
guid => 871 at http://www.footballfancast.com
|
Мне нужно из елемента quid вычленить 871.
Причем это число может быть произвольной длинны | |
|
|
|
|
|
|
|
для: ШИМ
(14.12.2007 в 15:55)
| | К массивам это не имеет никакого отношения. Если число всегда в начале строки:
<?php
$array = array('guid' => '871 at http://www.footballfancast.com');
$number = intval($array['guid']);
?>
|
| |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 16:03)
| | СОРРИ
Я ЗаГналСя...
Спасибо!!! | |
|
|
|
|
|
|
|
для: ШИМ
(14.12.2007 в 16:07)
| | А вы пробовали echo $number ? | |
|
|
|
|
|
|
|
для: sim5
(14.12.2007 в 16:09)
| | > А вы пробовали echo $number ?
Это ШИМу или Вы хотели написать мне? | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 16:18)
| | Ему, он снес свое сообщение, в котором сомневался в приведенном вами. ) | |
|
|
|
|
|
|
|
для: ШИМ
(14.12.2007 в 15:55)
| | Но оно всегда стоит сначала...
вобщем будет всегда вида
1234 at http://www.footballfancast.com
|
как вытащить первое число.? | |
|
|
|
|
|
|
|
для: ШИМ
(14.12.2007 в 16:04)
| | Так вот это и делает
$number = intval($array['guid']);
|
>как вытащить первое число.?
или вы имеете ввиду первую цифру, скажем 1 ? | |
|
|
|
|
|
|
|
для: ШИМ
(14.12.2007 в 16:04)
| | > Но оно всегда стоит сначала...
> 1234 at http://www.footballfancast.com
Это разве не в начале строки? :) | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 16:17)
| |
<?
$str = "1234 at http://www.footballfancast.com";
$pattern = "/([\d]+).*/si";
preg_match($pattern, $str, $cells);
echo $cells[1];
?>
|
| |
|
|
|
|
|
|
|
для: mihdan
(14.12.2007 в 16:58)
| | > /([\d]+).*/si
Тогда уж /\d+/ | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 17:33)
| | Не понял. Вы сами то попробовли что написали?
Максимум так
| |
|
|
|
|
|
|
|
для: mihdan
(14.12.2007 в 17:56)
| | > Не понял. Вы сами то попробовли что написали?
Когда-то пробовал. Но не сейчас. Хотите сказать, что работать не будет? | |
|
|
|
|
|
|
|
для: ШИМ
(14.12.2007 в 16:04)
| | При условии что нужно вывести первую цифру ;)
<?
$str = "1234 at http://www.footballfancast.com";
$pattern = "/(\d+)/";
preg_match($pattern, $str, $cells);
echo substr($cells[1], 0, 1);
?>
|
| |
|
|
|
|
|
|
|
для: mihdan
(14.12.2007 в 18:04)
| | Тогда можно просто $cells[1][0]. | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 18:05)
| | Unkind, согласен - сам подумал об этом когда писал. | |
|
|
|
|
|
|
|
для: mihdan
(14.12.2007 в 18:06)
| | Скобочки в паттерне зачем?
P.S. Вы исправляете сообщения после моих...У Вас ранее было $cells[0] в сообщении от 14.12.2007 в 16:58. | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 18:08)
| | Чтоб запомнить значение внутри них(в массиве с индексом 0), а как же иначе?
PS: так время 18:08 по Москве уже. Увидел поправил, но вопрос то не в этом, а в скобках
PS2: Unkind, я вас понял. Вы спросили до того как я менял что-то. Тогда да, можно и без скобок при условии что выводить будем $cells[0] | |
|
|
|
|
|
|
|
для: mihdan
(14.12.2007 в 18:10)
| | В результирующем массиве в индексе 0 будет найденое соответсвие паттерну. В любом случае: со скобками или без. А скобки только добавят индекс 1. | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 18:13)
| | Unkind, думаю дискуссию можно закрыть, мы поняли друг друга | |
|
|
|
|
|
|
|
для: mihdan
(14.12.2007 в 18:14)
| | Нормально! я только спросил у автора
>или вы имеете ввиду первую цифру, скажем 1 ?
это мой пост.
Автор уже давно вас поблагодарил, и понятно стало, что ему надо не первую цифру.
Вы уже здесь разогнали тему :) | |
|
|
|
|
|
|
|
для: Faraon
(14.12.2007 в 19:57)
| | Я лишь решил придраться к тому, что паттерн содержит много лишнего. | |
|
|
|
|
|
|
|
для: Unkind
(14.12.2007 в 20:05)
| | Людям просто хотелось общения, что тут непонятного. Спасибо всем, кто поддержал беседу. | |
|
|
|